Apache-SOAP/Tomcat Classpath problem

2003-07-03 Thread Brian Abbott
Hi,
 
Im runing Tomcat 4.0.6. I have a web application running and
Apache-SOAP installed. The web application is publishing methods to be
accessed via soap-rpc. When the client code makes a call, the fault code
is badTargetObjectURI. The problem is the classpath on Tomcat doesnt
contain the class files for implementation code. However, when I add the
correct path to the catalina.bat startup script, the .jar files in my
WEB-INF\lib directory arent being added to the tomcat classpath. Has
anyone seen or experienced this before?
 
Thanks,
 
Brian Abbott


Tomcat classpath problem

2003-06-10 Thread Manav Gupta
Apologies for the re-post, but I'm not sure if my messages are reaching the
list.
---
Hi,
 
I'm trying to understand the tomcat class loading mechanism and have read
through the Class Loader HOW-TO (
http://jakarta.apache.org/tomcat/tomcat-4.1-doc/class-loader-howto.html
http://jakarta.apache.org/tomcat/tomcat-4.1-doc/class-loader-howto.html ).
 

How does one make additional jars available to tomcat? I understand one can
add them to WEB-INF/lib,but there are sometimes that approach does not work.
Here's a scenario:
I'm using tomcat 4.1.24 with jdk 1.4.1_02. One of the required libraries for
my web app is oc4j.jar. If I put that oc4j.jar into the WEB-INF/lib, tomcat
throws the following error on startup:
=
Starting service Tomcat-Standalone
Apache Tomcat/4.1.24
WebappClassLoader:
validateJarFile(D:\jakarta-tomcat-4.1.24\bin\..\webapps\graphics\WEB-INF\lib
\oc4j.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending
class: javax/servlet/Servlet.class
=
Upon checking, I found oc4j.jar has javax.servlet.Servlet and I suspect it
does not adhere to Servlet Spec 2.3 (but probably something earlier than
that). 
 
If I do not put oc4j.jar in WEB-INF/lib, I get the following error:
 
2003-06-10 13:28:43 StandardWrapperValve[jsp]: Servlet.service() for servlet
jsp threw exception
javax.servlet.ServletException:
javax.servlet.jsp.tagext.TagInfo.init(Ljava/lang/String;Ljava/lang/String;
Ljava/lang/String;Ljava/lang/String;Ljavax/servlet/jsp/tagext/TagLibraryInfo
;Ljavax/servlet/jsp/tagext/TagExtraInfo;[Ljavax/servlet/jsp/tagext/TagAttrib
uteInfo;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljavax/servle
t/jsp/tagext/TagVariableInfo;)V
 at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:336)
 at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:247)
 at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:193)
 at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:256)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:191)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
 at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180
)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
 at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
java:171)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
 at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172
)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:174)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
 at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
 at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
ction(Http11Protocol.java:392)
 at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
 at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:619)
 at java.lang.Thread.run(Thread.java:536)
Root cause is; java.lang.NoSuchMethodError:
javax.servlet.jsp.tagext.TagInfo.init(Ljava/lang/String;Ljava/lang/String;
Ljava/lang/String;Ljava/lang/String;Ljavax/servlet/jsp/tagext/TagLibraryInfo
;Ljavax/servlet/jsp/tagext/TagExtraInfo;[Ljavax/servlet/jsp/tagext/TagAttrib
uteInfo;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljavax/servle
t/jsp/tagext/TagVariableInfo;)V
 at
org.apache.jasper.compiler.TagLibraryInfoImpl.createTagInfo(TagLibraryInfoIm
pl.java:385)
(and a whole lot of lines)
 
This above error stems from a particular tag library that I have written,
and when tomcat tries 

RE: Tomcat classpath problem

2003-06-10 Thread Shapira, Yoav

Howdy,

How does one make additional jars available to tomcat? I understand one
can
add them to WEB-INF/lib,but there are sometimes that approach does not
work.
Here's a scenario:
I'm using tomcat 4.1.24 with jdk 1.4.1_02. One of the required
libraries
for
my web app is oc4j.jar. If I put that oc4j.jar into the WEB-INF/lib,
tomcat
throws the following error on startup:
=
Starting service Tomcat-Standalone
Apache Tomcat/4.1.24
WebappClassLoader:
validateJarFile(D:\jakarta-tomcat-4.1.24\bin\..\webapps\graphics\WEB-
INF\lib
\oc4j.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2.
Offending
class: javax/servlet/Servlet.class

The message is fairly clear: oc4j.jar is not acceptable in a Servlet
Specification v2.3 container, because it contains a copy of the java
servlet API.  You need to re-package the oc4j jar, taking out the
servlet classes, or obtain a later copy of the oc4j jar which does not
contain the servlet classes.

Generally speaking, the way to make more jars available to tomcat for
your web application is to place these jars in the WEB-INF/lib directory
of your web application.  However, the jars can't contain the servlet
APIs.

Yoav Shapira



This e-mail, including any attachments, is a confidential business communication, and 
may contain information that is confidential, proprietary and/or privileged.  This 
e-mail is intended only for the individual(s) to whom it is addressed, and may not be 
saved, copied, printed, disclosed or used by anyone else.  If you are not the(an) 
intended recipient, please immediately delete this e-mail from your computer system 
and notify the sender.  Thank you.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Tomcat classpath problem

2003-06-10 Thread Cox, Charlie
unpack your jar to WEB-INF/classes and remove javax/servlet tree. This will
provide you with your classes without the conflicting servlet classes.

Charlie

 -Original Message-
 From: Manav Gupta [mailto:[EMAIL PROTECTED]
 Sent: Tuesday, June 10, 2003 10:58 AM
 To: Tomcat (E-mail)
 Subject: Tomcat classpath problem
 
 
 Apologies for the re-post, but I'm not sure if my messages 
 are reaching the
 list.
 ---
 Hi,
  
 I'm trying to understand the tomcat class loading mechanism 
 and have read
 through the Class Loader HOW-TO (
 http://jakarta.apache.org/tomcat/tomcat-4.1-doc/class-loader-h
 owto.html
 http://jakarta.apache.org/tomcat/tomcat-4.1-doc/class-loader-
 howto.html ).
  
 
 How does one make additional jars available to tomcat? I 
 understand one can
 add them to WEB-INF/lib,but there are sometimes that approach 
 does not work.
 Here's a scenario:
 I'm using tomcat 4.1.24 with jdk 1.4.1_02. One of the 
 required libraries for
 my web app is oc4j.jar. If I put that oc4j.jar into the 
 WEB-INF/lib, tomcat
 throws the following error on startup:
 =
 Starting service Tomcat-Standalone
 Apache Tomcat/4.1.24
 WebappClassLoader:
 validateJarFile(D:\jakarta-tomcat-4.1.24\bin\..\webapps\graphi
 cs\WEB-INF\lib
 \oc4j.jar) - jar not loaded. See Servlet Spec 2.3, section 
 9.7.2. Offending
 class: javax/servlet/Servlet.class
 =
 Upon checking, I found oc4j.jar has javax.servlet.Servlet and 
 I suspect it
 does not adhere to Servlet Spec 2.3 (but probably something 
 earlier than
 that). 
  
 If I do not put oc4j.jar in WEB-INF/lib, I get the following error:
  
 2003-06-10 13:28:43 StandardWrapperValve[jsp]: 
 Servlet.service() for servlet
 jsp threw exception
 javax.servlet.ServletException:
 javax.servlet.jsp.tagext.TagInfo.init(Ljava/lang/String;Ljav
 a/lang/String;
 Ljava/lang/String;Ljava/lang/String;Ljavax/servlet/jsp/tagext/
 TagLibraryInfo
 ;Ljavax/servlet/jsp/tagext/TagExtraInfo;[Ljavax/servlet/jsp/ta
 gext/TagAttrib
 uteInfo;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;
 [Ljavax/servle
 t/jsp/tagext/TagVariableInfo;)V
  at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java:336)
  at
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
 er(Application
 FilterChain.java:247)
  at
 org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
 cationFilterCh
 ain.java:193)
  at
 org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
 rapperValve.ja
 va:256)
  at
 org.apache.catalina.core.StandardPipeline$StandardPipelineValv
 eContext.invok
 eNext(StandardPipeline.java:643)
  at
 org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
 ine.java:480)
  at 
 org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
  at
 org.apache.catalina.core.StandardContextValve.invoke(StandardC
 ontextValve.ja
 va:191)
  at
 org.apache.catalina.core.StandardPipeline$StandardPipelineValv
 eContext.invok
 eNext(StandardPipeline.java:643)
  at
 org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
 ine.java:480)
  at 
 org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
  at
 org.apache.catalina.core.StandardContext.invoke(StandardContex
 t.java:2415)
  at
 org.apache.catalina.core.StandardHostValve.invoke(StandardHost
 Valve.java:180
 )
  at
 org.apache.catalina.core.StandardPipeline$StandardPipelineValv
 eContext.invok
 eNext(StandardPipeline.java:643)
  at
 org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDi
 spatcherValve.
 java:171)
  at
 org.apache.catalina.core.StandardPipeline$StandardPipelineValv
 eContext.invok
 eNext(StandardPipeline.java:641)
  at
 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
 Valve.java:172
 )
  at
 org.apache.catalina.core.StandardPipeline$StandardPipelineValv
 eContext.invok
 eNext(StandardPipeline.java:641)
  at
 org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
 ine.java:480)
  at 
 org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
  at
 org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
 gineValve.java
 :174)
  at
 org.apache.catalina.core.StandardPipeline$StandardPipelineValv
 eContext.invok
 eNext(StandardPipeline.java:643)
  at
 org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
 ine.java:480)
  at 
 org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
  at 
 org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.
 java:223)
  at
 org.apache.coyote.http11.Http11Processor.process(Http11Process
 or.java:594)
  at
 org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
 r.processConne
 ction(Http11Protocol.java:392)
  at
 org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
 nt.java:565)
  at
 org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
 ThreadPool.jav
 a:619)
  at java.lang.Thread.run(Thread.java:536)
 Root cause is; java.lang.NoSuchMethodError