You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by "Ng Yan Tun, Van Sioung" <VN...@CCSC.com> on 2002/06/19 02:04:47 UTC
deployment problem
Hi guys,
This is the first time I am using Apache Axis. I have followed that
instruction on installlation.
I am using Tomcat 3.2.
I have already set the classpath for
e:\todeploy;e:\axisjar\xerces.jar;e:\axisjar\axis.jar;e:\axisjar\commons-log
ging.jar;e:\axisjar\jaxrpc.jar;e:\axisjar\log4j-core.jar;e:\axisjar\tt-bytec
ode.jar;e:\axisjar\wsdl4j.jar;
e:\todeploy is the directory where I kept the sample code to be deployed.
When I tried the deployement I get the following error:
E:\TODEPLOY\SAMPLES\STOCK>java org.apache.axis.client.AdminClient
-lhttp://localhost:8080/axis/services/AdminService deploy.wsdd
- Processing file deploy.wsdd
- AxisFault: AxisFault
faultCode: http://xml.apache.org/axis/:HTTP
faultString: Internal Server Error
faultActor: null
faultDetail:
null: return code: 500
<h1>Error: 500</h1>
<h2>Location: /axis/services/AdminService</h2><b>Internal Servlet
Error:</b><br><pre>java.lang.NoSuchMethodError: java.lang.String
org.w3c.dom.Node.getLocalName()
void
org.apache.axis.deployment.wsdd.WSDDDocument.<init>(org.w3c.dom.Document)
void
org.apache.axis.configuration.FileProvider.configureEngine(org.apache.axis.A
xisEngine)
void org.apache.axis.AxisEngine.init()
void
org.apache.axis.AxisEngine.<init>(org.apache.axis.EngineConfiguration)
void
org.apache.axis.server.AxisServer.<init>(org.apache.axis.EngineConfiguration
)
org.apache.axis.server.AxisServer
org.apache.axis.server.DefaultAxisServerFactory.createNewServer(org.apache.a
xis.EngineConfiguration)
org.apache.axis.server.AxisServer
org.apache.axis.server.DefaultAxisServerFactory.getServer(java.util.Map)
org.apache.axis.server.AxisServer
org.apache.axis.server.AxisServer.getServer(java.util.Map)
org.apache.axis.server.AxisServer
org.apache.axis.transport.http.AxisServlet.getEngine(javax.servlet.http.Http
Servlet)
org.apache.axis.server.AxisServer
org.apache.axis.transport.http.AxisServlet.getEngine()
void
org.apache.axis.transport.http.AxisServlet.doPost(javax.servlet.http.HttpSer
vletRequest, javax.servlet.http.HttpServletResponse)
void
javax.servlet.http.HttpServlet.service(javax.servlet.http.HttpServletRequest
, javax.servlet.http.HttpServletResponse)
void
javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest,
javax.servlet.ServletResponse)
void
org.apache.tomcat.core.ServletWrapper.doService(org.apache.tomcat.core.Reque
st, org.apache.tomcat.core.Response)
void
org.apache.tomcat.core.Handler.service(org.apache.tomcat.core.Request,
org.apache.tomcat.core.Response)
void
org.apache.tomcat.core.ServletWrapper.service(org.apache.tomcat.core.Request
, org.apache.tomcat.core.Response)
void
org.apache.tomcat.core.ContextManager.internalService(org.apache.tomcat.core
.Request, org.apache.tomcat.core.Response)
void
org.apache.tomcat.core.ContextManager.service(org.apache.tomcat.core.Request
, org.apache.tomcat.core.Response)
void
org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(org.a
pache.tomcat.service.TcpConnection, java.lang.Object[])
void
org.apache.tomcat.service.TcpWorkerThread.runIt(java.lang.Object[])
void org.apache.tomcat.util.ThreadPool$ControlRunnable.run()
void java.lang.Thread.run()
</pre>
Your help is well appreciated
regards
Van Sioung
Re: deployment problem
Posted by Brian Ewins <Br...@btinternet.com>.
Ng Yan Tun, Van Sioung wrote:
> Hi guys,
>
> This is the first time I am using Apache Axis. I have followed that
> instruction on installlation.
> I am using Tomcat 3.2.
You might want to think about upgrading your tomcat. However: A common
problem with Tomcat 3.2 is that it ships with a JAXP1.0 parser; you need
to ensure that a JAXP1.1 parser such as Xerces (and yes I see this in
your classpath) gets used instead. This is obviously not happening at
present - the missing method is a DOM Level 2 addition, but the DOM Node
class is being found, which suggests you have a DOM level 1 implementation.
The 'correct' way to change the classpath for a web application is not
to alter the system classpath - which ends up having side effects on all
applications - but to either bundle the jars with your web app (ie they
go in %TOMCAT_HOME%\webapps\your_app\WEB-INF\lib ) or to add them to the
server.
In one of the directories in tomcat (from memory, %TOMCAT_HOME%\lib on
TC3.2 - its %TOMCAT_HOME\common\lib on TC4) you'll find the libs that
get placed in your apps classpath. In TC3.2 you'll find these:
jaxp.jar (JAXP 1.0 API)
parser.jar (Crimson parser, JAXP 1.0 compliant)
You want to /remove/ these two files and replace them with xerces. In
the most recent xerces releases this involves adding two jars
(xerces.jar and xml-apis.jar). Earlier releases have a single jar
(xerces.jar), such as the one you got with axis.
Hope this helps.
-Baz