- This topic has 4 replies, 2 voices, and was last updated 19 years, 9 months ago by Gary Gaggiani.
-
AuthorPosts
-
Gary GaggianiMemberRunning Eclipse 3.0.1, MyEclipse 3.8.4, Resin pro-3.0.10, Tapestry 3.0.1, Windows 2000, Spindle 3.
Used Spindle wizard to define default application. Built the application , deployed it to Resin, and started Resin in Debug mode. On the console, got the message “WEB-INF/web.xml:10: `org.apache.tapestry.ApplicationServlet’ is not a known
servlet. Servlets belong in the classpath, often in WEB-INF/classes.”I cannot determine how to make Resin aware of Tapestry. Used all of the default references in the .classpath, including the one to Spindle for the Tapestry libraries.
ClassPath file:
<classpath>
<classpathentry exported=”true” kind=”con” path=”com.iw.plugins.spindle.core.TAPESTRY_FRAMEWORK”/>
<classpathentry exported=”true” kind=”con” path=”org.eclipse.jdt.launching.JRE_CONTAINER”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/aopalliance.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/boot.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/ejb-20.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/ejb-30.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/j2eedeploy.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/jaxrpc.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/jca-15.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/jms-11.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/jmx-12.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/jsdk-24.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/jstl-11.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/jta-101.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/license.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/portlet-10.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/resin-jdk15.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/resin.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/resinboot.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/webutil.jar”/>
<classpathentry output=”web/WEB-INF/classes” kind=”src” path=”src”/>
<classpathentry output=”web/WEB-INF/classes” kind=”src” path=”web/WEB-INF/work”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/isorelax.jar”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/resin-pro-3.0.10/lib/retroweaver.jar”/>
<classpathentry exported=”true” kind=”con” path=”com.genuitec.eclipse.j2eedt.core.J2EE14_CONTAINER”/>
<classpathentry exported=”true” kind=”lib” path=”D:/Program Files/Tapestry-3.0.1/lib/runtime/log4j-1.2.6.jar”/>
<classpathentry kind=”output” path=”web/WEB-INF/classes”/>Web.xml files:
<?xml version=”1.0″ encoding=”UTF-8″?>
<!DOCTYPE web-app
PUBLIC “-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN”
“http://java.sun.com/dtd/web-app_2_3.dtd”>
<!– generated by Spindle, http://spindle.sourceforge.net –><web-app>
<display-name>BIPS</display-name>
<servlet>
<servlet-name>BIPS</servlet-name>
<servlet-class>org.apache.tapestry.ApplicationServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>BIPS</servlet-name>
<url-pattern>/app</url-pattern>
</servlet-mapping>
</web-app>Anything special I have to do for Resin??
Riyad KallaMemberFrom your classpath it looks like you are references a user library for the tapestry libs, is this correct? Typically JARs that your application needs to run (in this case Tapestry) MUST go in your WEB-INF/lib directory OR you need to setup the web deployment rules to deploy libraries or external JARs from your Library path out to your project for you (a relatively new MyEclipse feature). You can adjust these deployment settings under Project Properties > MyEclipse-WEb > Deployment… you can tell the deployer how to handle references libraries, if you want it to copy them out to your WEB-INF/lib for you, whcih in your case you probably want.
Gary GaggianiMemberRiyad,
You are correct, these files must be in the library path (“WEB-INF/lib”). I was able to find an example application that had the proper .JAR files in WEB-INF/lib. I can follow the example and simply put these files into the library path manually, but I was under the impression that Spindle would take card of this for me. In addition, there are two files, “javassist-2.5.1.jar” and “ognl-2.6.3.jar” that are in the example library path, but I cannot find in my Tapestry ibraries.
The question really boils down to how the runtime libraries should be put into the WEB-INF/lib of the project. Should I do this manually, or is there a facility within Spindle/Tapestry/ME to handle this automatically?
Gary
Riyad KallaMemberbut I was under the impression that Spindle would take card of this for me.
Sorry, I have no idea how Spindle works. You are *always* safest if you assume the plugin doesn’t do anything for you, then atleast get your project setup correclty so you could deploy it with a simple Ant script, then add the plugins… if they automate some tasks great, but atleast you basically have a valid application structure. That is my philosophy atleast… YMMV
Should I do this manually, or is there a facility within Spindle/Tapestry/ME to handle this automatically?
Let’s pretend for a second that you only had MyEclipse installed. If this is the case, then I would suggest that you put the Tapestry JARs (however many there are) into the WEB-INF/lib directory. If for some reason you really didn’t want to, MyEclipse can be setup to put them there for you when you deploy. Please see my instructions above about modifying the deployment settings (Project Properties > MyEclipse-Web > Deployment).
Gary GaggianiMemberThanks for your input. This can now be closed.
Gary
-
AuthorPosts