关于《Developing Eclipse/OSGi Web
Applications Part》一文中的例子
近来看看点OSGI在Web开发中的应用。看到这个方面的东西肯定会搜到EclipseZone上面的一篇文章,他叫《Developing Eclipse/OSGI Web Application》。说实话这个文章写的真的没说的,浅入浅出的同时还给你真正带来不少好东西。他的所有的内容是围绕着一个叫Rsp的例子进行的。这个例子在http://sourceforge.net/project/showfiles.php?group_id=122298
处可以下载到。
这里我下载了rspDemo-0.2.zip这个包。按照要求把包打开,并且运行。果然可以运行,并且能够得到文中所说的结果。
下面我们就来看看解压后的文件夹:
这个里面不光包括了示例代码还包含了一个tomcat-5.5.15生怕被人机器上没有装tomcat。好了,把我自己的eclipse的workspace设置成c:\rsp\workspace。这样我就得到了一个如下图的工作界面:
这个时候我不想使用rsp中自己带的那个tomcat,我想自己已经有的tomcat。就在这个时候我遇到问题了。什么问题呢,我们来看看启动时的log
严重: Servlet.service() for servlet jsp threw
exception
org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/core
cannot be resolved in either web.xml or the jar files deployed with this
application
很明显是没有找到uri为http://java.sun.com/jsp/jstl/core
的tld文件。不对啊,这个应该都是在web应用程序里面的啊。但是他自己带的tomcat就可以。肯定是他自己加了。我找了好大一会儿终于在C:\rsp\apache-tomcat-5.5.15\common\lib多出两个包他们分别是jstl.jar和standard.jar。查看了一下standard.jar所有真相大白。他包含了一个c.tld的文件。其中有这么一段
<description>JSTL
1.1 core library</description>
<display-name>JSTL
core</display-name>
<tlib-version>1.1</tlib-version>
<short-name>c</short-name>
<uri>http://java.sun.com/jsp/jstl/core</uri>
好了,把这两个包放入到我自己的tomcat中,所有问题都解决了。终于顺畅的跑起来了。