1 2 Previous Next 15 Replies Latest reply on Oct 4, 2002 8:25 AM by Troy

    JBoss 3.0: Not setting jetty classpath

    Marcus Brito Novice

      Hello, folks.

      I've got a problem with JBoss 3.0 where I try to deploy a simple test application with some EJBeans and a few JSPages.

      The beans works fine (even CMP 2.0), however there is a problem running the JSP files. It seems that JBoss is not adding my bean classes to the Jetty classpath.

      Here is the error I get:

      [Jetty] WARNING: Servlet Exception for /erp-test/cliente.jsp
      org.apache.jasper.JasperException: JASPER: Unable to compile class for JSPNote: sun.tools.javac.Main has been deprecated.
      /tmp/JettyContext38244.tmp/_0002fcliente_0002ejspcliente_jsp_0.java:19: Class javax.ejb.FinderException not found in import.
      import javax.ejb.FinderException;
      ^
      /tmp/JettyContext38244.tmp/_0002fcliente_0002ejspcliente_jsp_0.java:20: Package com.tld.erp.cliente.interfaces not found in import.
      import com.tld.erp.cliente.interfaces.*;

      (...)

      and some more, all of them complaining about not finding some class or interface. (BTW, com.tld.erp.* are my application packages)
      .

      Willing to provide more info and/or source code if needed.

        • 2. Re: JBoss 3.0: Not setting jetty classpath
          Thomas Phan Newbie

          I find this problem too, even with JBoss 3 beta, refer to:

          http://main.jboss.org/thread.jsp?forum=50&thread=8186

          --
          I've a servlet in WEB-INF/classes/esb/web/XmlHttp.class

          I can access it in Tomcat using:

          http://localhost/esb/servlet/esb.web.XmlHttp

          It gives "HTTP method GET is not supported by this URL" which is a correct error, since I implemented only the doPost method

          --
          but I cannot do this same thing with JBoss/Jetty:

          HTTP ERROR: 404 Could not find resource for /esb/servlet/esb.web.XmlHttp
          RequestURI=/esb/servlet/esb.web.XmlHttp

          --
          Note: http://localhost/esb/ is the root for both Jetty and Tomcat

          • 3. Re: JBoss 3.0: Not setting jetty classpath
            Frank O'Rourke Newbie

            Is there any update on this. I have a similar problem with a servlet trying to access code in another jar.
            Ther servlet is in a war. My other application code is in an jar and they are packaged together in an ear.

            How do I tell the servlet code how to find the code in the jar.

            • 4. Re: JBoss 3.0: Not setting jetty classpath
              Jules Gosnell Novice

              I've just checked in some code that should improve this.

              The problem is that Jasper requires a classpath like a.jar:b.jar:c.jar but all Jetty gets from JBoss is a classloader.

              I try to build the classpath by interrogating the classloader, but unfortunate;y some of the URLs I get back refer to jars nested at arbitrary depths inside other jars.

              There are people working on this and soon all jars will be unpacked to temporary locations. Then the classpath will work and all your JSPs will compile properly on the fly.

              In the meantime, I recommend that you precompile them using e.g. JSPC. They should run fine, since your classes will be available through the aforementioned classloader.

              Jules

              • 5. Re: JBoss 3.0: Not setting jetty classpath
                Thomas Phan Newbie

                Thx Jules, I see ur changes during JBoss beta2 startup, but my problem still exist, hope the developers will fix this soon :) It'll be great if we can use Apache Struts in Jetty (it doesn't work now)

                The JARs within my EAR's WAR is still not recognized

                • 6. Re: JBoss 3.0: Not setting jetty classpath
                  Thomas Phan Newbie

                  Hi, just wonder if the classpath issue has been fixed. I still get:

                  HTTP ERROR: 404 Could not find resource for /esb/servlet/esb.web.XmlHttp
                  RequestURI=/esb/servlet/esb.web.XmlHttp

                  (see my 2 posts above)

                  I cannott use Jetty with Struts i18n if this won't be fixed

                  Thanks

                  • 7. Re: JBoss 3.0: Not setting jetty classpath
                    Jules Gosnell Novice


                    What OS are you on ? Windows I suspect ?

                    I have JSP classpath working fine on Linux - struts deploys and (brief test only) works.....

                    Post me a log of the problem happening - including JSP classpath, and if you ARE on Windows, try to figure out what is going on - if you can let me know, there is a much better chance of my fixing it quickly, otherwise I have to go set up a Windows environment....


                    Jules

                    • 8. Re: JBoss 3.0: Not setting jetty classpath
                      Thomas Phan Newbie

                      Hi, Thanks for your reply and suggestion :) I'm using RH Linux 7.0/JDK 1.3

                      To reproduce the problem, you can just write any servlet, and package it under WEB-INF/classes

                      e.g.:

                      [root@dev classes]# ls -l /tmp/Jetty__8080___esb/webapp/WEB-INF/classes/esb/web/QueryServlet.class
                      -rw-r--r-- 1 root root 3505 Apr 5 12:54 /tmp/Jetty__8080___esb/webapp/WEB-INF/classes/esb/web/QueryServlet.class
                      [root@dev classes]#

                      then access it using http://dev.entersys.com:8080/esb/servlet/esb.web.QueryServlet.

                      13:12:14,499 INFO [STDOUT] 2085948 [SocketListener-4] WARN org.jboss.jetty.Jetty - WARNING: Dynamic servlet esb.web.QueryServlet is not loaded from context: /esb
                      13:12:14,501 WARN [Jetty] WARNING:
                      javax.servlet.UnavailableException: Dynamic servlet esb.web.QueryServlet is not loaded from context: /esb
                      at org.mortbay.jetty.servlet.ServletHandler.getHolderEntry(ServletHandler.java:733)
                      at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:560)
                      at org.mortbay.http.HttpContext.handle(HttpContext.java:1356)
                      at org.mortbay.http.HttpContext.handle(HttpContext.java:1309)
                      at org.mortbay.http.HttpServer.service(HttpServer.java:744)
                      at org.jboss.jetty.Jetty.service(Jetty.java:530)
                      at org.mortbay.http.HttpConnection.service(HttpConnection.java:743)
                      at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:916)
                      at org.mortbay.http.HttpConnection.handle(HttpConnection.java:758)
                      at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:145)
                      at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:287)
                      at org.mortbay.util.ThreadPool$JobRunner.run(ThreadPool.java:715)
                      at java.lang.Thread.run(Thread.java:484)

                      This can be done in Tomcat.

                      ----------
                      For Struts, I use its i18n. To do that, I follow the instruction below (http://jakarta.apache.org/struts/doc-1.0.2/userGuide/building_view.html)


                      Assume that your source code is created in package
                      com.mycompany.mypackage, so it is stored in a directory
                      (relative to your source directory) named
                      com/mycompany/mypackage. To create a resource bundle called
                      com.mycompany.mypackage.MyResources, you would create the
                      following files in the com/mycompany/mypackage directory:



                      MyResources.properties - Contains the messages in the default
                      language for your server. If your default language is English, you
                      might have an entry like this:
                      prompt.hello=Hello
                      MyResources_xx.properties - Contains the same messages in the
                      language whose ISO language code is "xx" (See the ResourceBundle
                      Javadoc page for a link to the current list). For a French version
                      of the message shown above, you would have this entry:
                      prompt.hello=Bonjour
                      You can have resource bundle files for as many languages as you need.



                      When you configure the controller servlet in the web application
                      deployment descriptor, one of the things you will need to define in
                      an initialization parameter is the base name of the resource bundle
                      for the application. In the case described above, it would be
                      com.mycompany.mypackage.MyResources.



                      <servlet-name>action</servlet-name>
                      <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
                      <init-param>
                      <param-name>application</param-name>
                      <param-value>com.mycompany.mypackage.MyResources</param-value>
                      </init-param>
                      <.../>



                      So, I've

                      <servlet-name>action</servlet-name>
                      <servlet-class>esb.web.ActionServlet</servlet-class>

                      <init-param>
                      <param-name>application</param-name>
                      <param-value>esb.web.ESBResources</param-value>
                      </init-param>

                      where esb.web.ActionServlet is org.apache.struts.action.ActionServlet's subclass, and

                      [root@dev classes]# cat /tmp/Jetty__8080___esb/webapp/WEB-INF/classes/esb/web/ESBResources.properties | head -10
                      button.cancel=Cancel
                      button.confirm=Confirm
                      button.reset=Reset
                      button.save=Save
                      button.delete=Delete
                      button.edit=Edit
                      button.new=New
                      button.next=Next
                      button.previous=Previous
                      database.load=Cannot load database from {0}
                      [root@dev classes]# cat /tmp/Jetty__8080___esb/webapp/cms/user/search.jsp
                      <%@ page language="java" %>
                      <%@ page contentType="text/html; charset=UTF-8" %>
                      <%@ taglib uri="/WEB-INF/tlds/taglib.tld" prefix="esb" %>
                      <%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
                      <%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>

                      ...

                      <html:form action="/cms/user/edit">
                      <html:submit>
                      <bean:message key="button.new"/>
                      </html:submit>
                      </html:form>

                      Note that <bean:message key="button.new"/> is the taglib that causes the problem here:

                      2002-04-05 12:42:24,110 WARN [org.jboss.jetty.Jetty] WARNING: Servlet Exception for /esb/cms/user/search.esb
                      javax.servlet.jsp.JspException: Missing message for key button.new
                      at org.apache.struts.taglib.bean.MessageTag.doStartTag(MessageTag.java:242)
                      at org.apache.jsp.search$jsp._jspService(search$jsp.java:238)
                      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
                      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
                      at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:202)
                      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
                      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474)
                      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
                      at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:326)
                      at org.mortbay.jetty.servlet.Dispatcher.dispatch(Dispatcher.java:259)
                      at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:156)
                      at org.apache.struts.action.ActionServlet.processActionForward(ActionServlet.java:1759)
                      at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1596)
                      at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:492)
                      at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
                      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
                      at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:326)
                      at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:595)
                      at org.mortbay.http.HttpContext.handle(HttpContext.java:1356)
                      at org.mortbay.http.HttpContext.handle(HttpContext.java:1309)
                      at org.mortbay.http.HttpServer.service(HttpServer.java:744)
                      at org.jboss.jetty.Jetty.service(Jetty.java:530)
                      at org.mortbay.http.HttpConnection.service(HttpConnection.java:743)
                      at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:916)
                      at org.mortbay.http.HttpConnection.handle(HttpConnection.java:758)
                      at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:145)
                      at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:287)
                      at org.mortbay.util.ThreadPool$JobRunner.run(ThreadPool.java:715)
                      at java.lang.Thread.run(Thread.java:484)

                      • 9. Re: JBoss 3.0: Not setting jetty classpath
                        Jules Gosnell Novice

                        OK,

                        firstly this is NOT a classpath problem - the clue is in the warning:

                        WARNING: Dynamic servlet esb.web.QueryServlet is not loaded from context: /esb

                        You are using dynamic servlet loading from the 'servlet' context. I stand open to correction here, but I think that this is a proprietary loading scheme, used by TC and which Jetty can be configured to support. The J2EE way, which I contend that you should be using, is to specify a servlet-mapping in you web.xml. This will be appended to your context path (derived either from your application.xml, if you are an ear, or your jboss-web.xml, or your war name - foo.war->/foo).

                        Try accessing your servlet at /<war-name> (substitute the nme of the war).

                        The second problem looks like a misuse, or bug in, JSP/Struts. Jetty is only mentioned on the stacktrace because that is what you are running in. There is no mention of classpath problems, or ClassNotFound...


                        Have I misunderstood?



                        Jules

                        • 10. Re: JBoss 3.0: Not setting jetty classpath
                          Thomas Phan Newbie

                          Hi, thanks very much :D

                          I'm sorry for asking the first question, and I'm happy to go with the J2EE approach, and that's working fine now.

                          For Struts, did you put struts.jar in jboss/lib/? org.apache.struts.action.ActionServlet cannot be loaded if struts.jar is only in the WAR's WEB-INF/lib/

                          My second question may relate to classpath, since the resources bundle classes (i.e. my ESBResources.properties) may not be loaded due to the classpath's configuration.

                          [root@dev script]# ls /tmp/Jetty__8080___esb/webapp/WEB-INF/classes/esb/web/ESBResources*
                          /tmp/Jetty__8080___esb/webapp/WEB-INF/classes/esb/web/ESBResources.properties
                          /tmp/Jetty__8080___esb/webapp/WEB-INF/classes/esb/web/ESBResources_zh_TW.properties
                          [root@dev script]#

                          I used the exact same code, and deploy Struts with JBoss/Tomcat, and that works. Although Tomcat works for 99% of my code now, I believe that Jetty is a faster and better web server :)

                          01:16:23,704 INFO [JBossWebApplicationContext#/esb] JSP classpath: /tmp/Jetty__8080___esb/webapp/WEB-INF/lib/struts.jar:/tmp/Jetty__8080___esb/webapp/WEB-INF/lib/regexp.jar:/tmp/Jetty__8080___esb/webapp/WEB-INF/lib/log4j.jar:/tmp/Jetty__8080___esb/webapp/WEB-INF/classes:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/crimson.jar/25.crimson.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/javagroups-2.0.jar/17.javagroups-2.0.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/org.apache.jasper.jar/8.org.apache.jasper.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/autonumber-plugin.jar/28.autonumber-plugin.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jboss-boot.jar/16.jboss-boot.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/tyrex.jar/49.tyrex.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jboss-pool.jar/31.jboss-pool.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/javax.servlet.jar/38.javax.servlet.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/hsqldb.jar/22.hsqldb.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/castor.jar/6.castor.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/scheduler-plugin.jar/19.scheduler-plugin.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jts.jar/12.jts.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jbossmq.jar/35.jbossmq.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jmxtools.jar/3.jmxtools.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/counter-plugin.jar/53.counter-plugin.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jboss-management.jar/9.jboss-management.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jboss-jmx-core.jar/21.jboss-jmx-core.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jboss-jca.jar/10.jboss-jca.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/deploy/jetty-plugin.sar/57.jetty-plugin.sar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/concurrent.jar/18.concurrent.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jboss-j2ee.jar/37.jboss-j2ee.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/deploy/jmx-ejb-connector-server.sar/54.jmx-ejb-connector-server.sar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/esb-web.war:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/mail-plugin.jar/34.mail-plugin.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/deploy/jms-ra.rar/70.jms-ra.rar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/activation.jar/32.activation.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jboss-jsr77.jar/20.jboss-jsr77.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/getopt.jar/42.getopt.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/scheduler-plugin-example.jar/14.scheduler-plugin-example.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/mail.jar/2.mail.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/rowset.jar/45.rowset.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/deploy/ejb-management.jar/74.ejb-management.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jmxri.jar/33.jmxri.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/esb.scheduler.jar/60.esb.scheduler.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jboss.jar/27.jboss.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jaas.jar/46.jaas.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jpl-pattern.jar/51.jpl-pattern.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jboss-jmx-services.jar/15.jboss-jmx-services.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jsse.jar/52.jsse.jar:/tmp/nested-14796.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/esb/dist/esb.scheduler.jar/47.esb.scheduler.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jndi.jar/7.jndi.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jpl-util.jar/30.jpl-util.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/hsqldb-plugin.jar/4.hsqldb-plugin.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/deploy/jboss-jdbc.rar/71.jboss-jdbc.rar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jbossmqha.jar/43.jbossmqha.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jboss-common.jar/29.jboss-common.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jaxp.jar/24.jaxp.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jbossmx.jar/40.jbossmx.jar:/tmp/nested-14792.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/deploy/esb.ear/75.esb.ear:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jcert.jar/39.jcert.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/deploy/jmx-ejb-adaptor.jar/73.jmx-ejb-adaptor.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/conf:/tmp/nested-14794.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/bcel.jar/11.bcel.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/deploy/jmx-rmi-adaptor.sar/55.jmx-rmi-adaptor.sar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jboss-system.jar/41.jboss-system.jar:/tmp/nested-14798.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jbosssx.jar/44.jbosssx.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/xalan.jar/23.xalan.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/deploy/jmx-html-adaptor.sar/56.jmx-html-adaptor.sar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/gnu-regexp.jar/48.gnu-regexp.jar:/tmp/nested-14800.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jnpserver.jar/50.jnpserver.jar:/tmp/nested-14802.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/log4j.jar/13.log4j.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/mm.mysql-2.0.11-bin.jar/5.mm.mysql-2.0.11-bin.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jbossha.jar/26.jbossha.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/lib/jnet.jar/36.jnet.jar:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/deploy/jboss-xa.rar/72.jboss-xa.rar:/var/jboss-all/build/output/jboss-3.0.0beta2/bin/run.jar:/usr/java/jdk1.3/lib/tools.jar
                          01:16:23,880 INFO [JaasSecurityManagerService] Created securityMgr=org.jboss.security.plugins.JaasSecurityManager@1977bd
                          01:16:23,881 INFO [JaasSecurityManagerService] setCachePolicy, c=org.jboss.util.TimedCachePolicy@42d9a
                          01:16:23,882 INFO [JaasSecurityManagerService] Added esb, org.jboss.security.plugins.SecurityDomainContext@4e00b4 to map
                          01:16:23,885 INFO [Jetty] Started JBossWebApplicationContext$JBossSXSecurityHandler in WebApplicationContext[/esb,jar:file:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/esb-web.war!/]
                          01:16:23,887 INFO [Jetty] Started JBossWebApplicationContext$JBossSXSecurityHandler in WebApplicationContext[/esb,jar:file:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/esb-web.war!/]
                          01:16:23,893 INFO [Jetty] Started SecurityHandler in WebApplicationContext[/esb,jar:file:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/esb-web.war!/]
                          01:16:23,895 INFO [Jetty] Started WebInfProtect
                          01:16:23,897 INFO [Jetty] Started FilterHandler in WebApplicationContext[/esb,jar:file:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/esb-web.war!/]
                          01:16:23,899 INFO [Jetty] Started ServletHandler in WebApplicationContext[/esb,jar:file:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/esb-web.war!/]
                          01:16:24,844 INFO [Jetty] JSP: init
                          01:16:27,010 ERROR [MainDeployer] could not start deployment :file:/var/jboss-all/build/output/jboss-3.0.0beta2/server/default/tmp/deploy/esb-web.war
                          java.lang.NoClassDefFoundError: org/apache/struts/action/ActionServlet
                          at java.lang.ClassLoader.defineClass0(Native Method)
                          at java.lang.ClassLoader.defineClass(ClassLoader.java:486)
                          at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:111)
                          at java.net.URLClassLoader.defineClass(URLClassLoader.java:248)
                          at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
                          at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
                          at java.security.AccessController.doPrivileged(Native Method)
                          at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
                          at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
                          at org.jboss.system.UnifiedClassLoader.loadClassLocally(UnifiedClassLoader.java:96)
                          at org.jboss.system.ServiceLibraries.loadClass(ServiceLibraries.java:403)
                          at org.jboss.system.MBeanClassLoader.loadClass(MBeanClassLoader.java:85)
                          at java.lang.ClassLoader.loadClass(ClassLoader.java:290)
                          at java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:553)
                          at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
                          at org.mortbay.http.ContextLoader.loadClass(ContextLoader.java:217)
                          at org.mortbay.http.ContextLoader.loadClass(ContextLoader.java:201)
                          at org.mortbay.http.HttpContext.loadClass(HttpContext.java:626)
                          at org.mortbay.jetty.servlet.Holder.start(Holder.java:152)
                          at org.mortbay.jetty.servlet.ServletHolder.start(ServletHolder.java:182)
                          at org.mortbay.jetty.servlet.ServletHandler.initializeServlets(ServletHandler.java:403)
                          at org.mortbay.jetty.servlet.ServletHandler.start(ServletHandler.java:384)
                          at org.mortbay.jetty.servlet.FilterHandler.start(FilterHandler.java:160)
                          at org.mortbay.http.HttpContext.startHandlers(HttpContext.java:1454)
                          at org.jboss.jetty.JBossWebApplicationContext.startHandlers(JBossWebApplicationContext.java:306)
                          at org.mortbay.http.HttpContext.start(HttpContext.java:1425)
                          at org.mortbay.jetty.servlet.WebApplicationContext.start(WebApplicationContext.java:405)
                          at org.jboss.jetty.Jetty.deploy(Jetty.java:406)
                          at org.jboss.jetty.JettyService.performDeploy(JettyService.java:244)
                          at org.jboss.web.AbstractWebContainer.start(AbstractWebContainer.java:392)
                          at org.jboss.deployment.MainDeployer.start(MainDeployer.java:672)
                          at org.jboss.deployment.MainDeployer.start(MainDeployer.java:665)
                          at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:517)
                          at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:480)
                          at java.lang.reflect.Method.invoke(Native Method)
                          at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
                          at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:441)
                          at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
                          at $Proxy5.deploy(Unknown Source)
                          at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:329)
                          at org.jboss.deployment.scanner.URLDeploymentScanner.scanDirectory(URLDeploymentScanner.java:516)
                          at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:389)
                          at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:237)
                          at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:162)
                          at java.lang.reflect.Method.invoke(Native Method)
                          at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
                          at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:441)
                          at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:805)
                          at $Proxy1.start(Unknown Source)
                          at org.jboss.system.ServiceController.start(ServiceController.java:309)
                          at org.jboss.system.ServiceController.start(ServiceController.java:327)
                          at java.lang.reflect.Method.invoke(Native Method)
                          at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
                          at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:441)
                          at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:324)
                          at org.jboss.system.server.ServerImpl.start(ServerImpl.java:213)
                          at org.jboss.Main.boot(Main.java:138)
                          at org.jboss.Main$1.run(Main.java:371)
                          at java.lang.Thread.run(Thread.java:484)

                          • 11. Re: JBoss 3.0: Not setting jetty classpath
                            Jules Gosnell Novice

                            To deploy a war - drop it into the 'deploy' directory.

                            Jules

                            • 12. Re: JBoss 3.0: Not setting jetty classpath
                              Thomas Phan Newbie

                              My WAR is inside an EAR, and I have my EAR in the deploy directory

                              The struts.jar is in my WAR's WEB-INF/lib

                              • 13. Re: JBoss 3.0: Not setting jetty classpath
                                Jules Gosnell Novice

                                OK,

                                If your CVS tree is up to date and you are still seeing this problem then:

                                if it's less than 5mb send me the war.

                                If it's larger, but you can get it to an ftp site, let me know where.

                                I can deploy struts-*.war and run 99% of the tests.


                                I have not written an app on top of it so I cannot be sure whether it works.


                                Jules

                                • 14. Re: JBoss 3.0: Not setting jetty classpath
                                  scott sadlo Newbie

                                  Hello All.

                                  i WAS experiencing this issue

                                  org.apache.jasper.JasperException: JASPER: Unable to compile class for JSPNote: sun.tools.javac.Main has been deprecated

                                  on [ WIndows 2000 - Jboss v3.0.2 and Jetty]

                                  The problem stemmed from Jasper's inability to find a jar which was in my classpath. Two days prior to the error everything worked beautifully. I moved onto another project. When i returned to the original project (with few changes) i fell upon this error.

                                  My solution was to delete my entire Jboss install and reinstall. Everything works beautifully again. I imagine i corrupted something while working on the second app.

                                  I hope this helps.

                                  1 2 Previous Next