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 Luis Rivera <lu...@hotmail.com> on 2006/08/01 20:12:45 UTC

Re: Abandoning AXIS :( !!!

   Axis devs,

Thanks for all the help. It is working now. The reason it was not working it 
was because I was trying to save a data copy from the SOAP/axis classes to 
my own defined classes, which at the end will need to be copied to the C++ 
memory space throught he JNI.

So, I tried to take the objects al the way to the JNI wrapper and access 
them using the JNi interface from the DLLs, but I didn't even get that far. 
The custom de/serialization in my xsd and holder classes were causing all 
kind of trouble with the tomcat class loaders, so I ended up abandoning the 
idea, created my parallel objects just to take them out to the shared tomcat 
directory and now I have a working application and DLL.

   So, thanks a lot, Tomcat and AXIS will eventually substitue RoqueWave 
around here :),
   --Luis R.

>From: Raghbir Singh <ra...@moremagic.com>
>Reply-To: axis-user@ws.apache.org
>To: axis-user@ws.apache.org
>CC: axis-devs@ws.apache.org
>Subject: Re: Abandoning AXIS :( !!!
>Date: Tue, 25 Jul 2006 11:12:16 -0400
>
>If you can change the System.loadLibrary or System.load call then,
>please put the complete path to dll there else try to change the
>java.library.path to include the path to the dll.
>
>Hope that helps.
>Thanks a lot,
>Raghbir Singh
>
>Davanum Srinivas said the following on 07/24/06 23:00:
> > Luis,
> >
> > Isn't the JNI dll and the code that wraps the JNI dll should be
> > independent of axis package. Right? If it is, only that code (dll and
> > jar for the wrapper) should be in the extension dirs. NOT axis jars.
> >
> > -- dims
> >
> > On 7/24/06, Luis Rivera <lu...@hotmail.com> wrote:
> >>
> >>     Thanks Dims and Warren,
> >>
> >> I really really apreciate your input.
> >>
> >> Does these options mean that it is not possible to make it work
> >> inside the
> >> current Tomcat class loading model  (as it says in the Tomcat
> >> documentation)?
> >>
> >> Basically I need to take my application and all the necessary axis
> >> jar file
> >> outside of the Tomcat directories, wheater it is under jre/lib/ext or
> >> another directory added to the classpath, rigth? Outside of the servlet
> >> classloading model.
> >>
> >> I will try this right away, just need to make sure I include all the 
>jar
> >> files from the axis package I will need to make it work.
> >>
> >>
> >>    Thanks again,
> >>     --Luis R.
> >>
> >> >From: Warren Crossing <wa...@nec.com.au>
> >> >Reply-To: axis-user@ws.apache.org
> >> >To: axis-user@ws.apache.org, luiggiil@hotmail.com
> >> >Subject: Re: Abandoning AXIS :( !!!
> >> >Date: Tue, 25 Jul 2006 09:49:05 +1000
> >> >
> >> >You might have to add the jar file to the System classpath i.e set the
> >> >CLASSPATH env variable and export it > export CLASSPATH
> >> >
> >> >Add an echo $CLASSPATH to tomcat/bin/catalina.sh around line ~147ish
> >> >
> >> >Good luck, you're definatley using the technology!!
> >> >
> >> >Davanum Srinivas wrote:
> >> >>did you try dropping the jar in jre\lib\ext and the dll's in jre\bin?
> >> >>http://java.sun.com/j2se/1.4.2/docs/guide/extensions/spec.html
> >> >>
> >> >>-- dims
> >> >>
> >> >>On 7/24/06, Luis Rivera <lu...@hotmail.com> wrote:
> >> >>
> >> >>>
> >> >>>     Axis users/devs,
> >> >>>
> >> >>>Unless I can find a solution for this today, I will have to move
> >> on and
> >> >>>find
> >> >>>better options. I believed that susing a axis/tomcat web service to
> >> >>>bridge
> >> >>>my current C++ server was going to be easy. But I cannot get past a
> >> >>>classs
> >> >>>loading problem in the TOMCAT and nobody seems to have any idea of
> >> what
> >> >>>is
> >> >>>wrong.
> >> >>>
> >> >>>See, we already have a server side implementation of the services
> >> in C++
> >> >>>(Roguewave), but we are looking into a cheaper option, which is
> >> why I was
> >> >>>looking into axis/tomcat. My clients are using Axis anyway, so I
> >> thought
> >> >>>using Tomcat was going to be straight forward.
> >> >>>
> >> >>>So, we don't want to reimplement everything in Java, which means I
> >> only
> >> >>>need
> >> >>>a jni wrapper in the axis server to call my DCE proxies in C++.
> >> So, the
> >> >>>picture looks like this
> >> >>>
> >> >>>axis Client --> axis Server --> jniWrapper --> DCEProxy (C++
> >> >>>implementation)
> >> >>>
> >> >>>And the problem lies on the fact that I need to place the jniWrapper
> >> >>>outside
> >> >>>of the TOMCAT_HOME/webapps directory, causing all kind of problems
> >> with
> >> >>>the
> >> >>>class loaders, despite the fact that all the classes are supposedly
> >> >>>correctly resolved. I still have that LinkageError, regardless of
> >> where I
> >> >>>place the classe (shared or common).
> >> >>>
> >> >>>As I said before, if all the application is placed under
> >> >>>TOMCAT_HOME/webapps/axis/classes, there are no exceptions thrown!
> >> >>>
> >> >>>Hope this clarifies my situation and if you have any advice, I would
> >> >>>greatly
> >> >>>appreciate it.
> >> >>>
> >> >>>I am including the exception as captured in the logger.
> >> >>>
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> >>>org.apache.axis.encoding.DeserializationContext  - Exit:
> >> >>>DeserializationContext::startPrefixMapping()
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> >>>org.apache.axis.encoding.DeserializationContext  - Enter:
> >> 
> >>>DeserializationContext::startElement(http://www.verimatrix.com/vcas.xsd,
> >>
> >> >>>getCompany)
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> >>>org.apache.axis.i18n.ProjectResourceBundle  -
> >> >>>org.apache.axis.i18n.resource::handleGetObject(pushHandler00)
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> >>>org.apache.axis.encoding.DeserializationContext  - Pushing handler
> >> >>>org.apache.axis.message.RPCHandler@2c9103
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> >>>org.apache.axis.encoding.DeserializationContext  - Exit:
> >> >>>DeserializationContext::startElement()
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> >>>org.apache.axis.encoding.DeserializationContext  - Enter:
> >> 
> >>>DeserializationContext::endElement(http://www.verimatrix.com/vcas.xsd,
> >>
> >> >>>getCompany)
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> >>>org.apache.axis.i18n.ProjectResourceBundle  -
> >> >>>org.apache.axis.i18n.resource::handleGetObject(popHandler00)
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> >>>org.apache.axis.encoding.DeserializationContext  - Popping handler
> >> >>>org.apache.axis.message.RPCHandler@2c9103
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> >>>org.apache.axis.i18n.ProjectResourceBundle  -
> >> >>>org.apache.axis.i18n.resource::handleGetObject(setProp00)
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> org.apache.axis.message.RPCHandler  -
> >> >>>Setting MessageContext property in RPCHandler.endElement().
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> >>>org.apache.axis.i18n.ProjectResourceBundle  -
> >> >>>org.apache.axis.i18n.resource::handleGetObject(empty00)
> >> >>>15063 [http-8095-Processor25] DEBUG org.apache.axis.utils.NSStack  -
> >> >>>NSPop
> >> >>>(empty)
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> >>>org.apache.axis.encoding.DeserializationContext  - Popped element
> >> stack
> >> >>>to
> >> >>>org.apache.axis.message.SOAPBody:Body
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> >>>org.apache.axis.encoding.DeserializationContext  - Exit:
> >> >>>DeserializationContext::endElement()
> >> >>>15063 [http-8095-Processor25] DEBUG
> >> >>>org.apache.axis.i18n.ProjectResourceBundle  -
> >> >>>org.apache.axis.i18n.resource::handleGetObject(toAxisFault00)
> >> >>>15063 [http-8095-Processor25] DEBUG org.apache.axis.enterprise  -
> >> Mapping
> >> >>>Exception to AxisFault
> >> >>>java.lang.reflect.InvocationTargetException
> >> >>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> >> Method)
> >> >>>         at
> >> 
> >>>sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >>
> >> >>>
> >> >>>         at java.lang.reflect.Method.invoke(Method.java:585)
> >> >>>         at
> >> 
> >>>org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:397)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:186)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)
> >>
> >> >>>         at
> >> 
> >>>org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
> >>
> >> >>>
> >> >>>         at
> >> org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
> >> >>>         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
> >> >>>         at
> >> 
> >>>org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:454)
> >>
> >> >>>         at
> >> org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
> >> >>>         at
> >> 
> >>>org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
> >>
> >> >>>         at
> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
> >> >>>         at
> >> 
> >>>org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
> >>
> >> >>>
> >> >>>         at
> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >> >>>         at
> >> 
> >>>org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
> >>
> >> >>>
> >> >>>         at
> >> 
> >>>org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
> >>
> >> >>>
> >> >>>         at java.lang.Thread.run(Thread.java:595)
> >> >>>Caused by: java.lang.LinkageError: Class soap/xsd/CompanyInfo
> >> violates
> >> >>>loader constraints
> >> >>>         at java.lang.ClassLoader.defineClass1(Native Method)
> >> >>>         at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
> >> >>>         at
> >> 
> >>>java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
> >>
> >> >>>         at
> >> java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
> >> >>>         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:306)
> >> >>>         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
> >> >>>         at
> >> java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
> >> >>>         at vsa.jniCRLimpl.nada(jniCRLimpl.java:100)
> >> >>>         at soap.wsdl.CRLImpl.getCompany(CRLImpl.java:94)
> >> >>>         at soap.wsdl.CRLSkeleton.getCompany(Unknown Source)
> >> >>>         ... 30 more
> >> >>>
> >> >>>    Thanks in advance,
> >> >>>    --Luis R.
> >> >>>
> >> >>>_________________________________________________________________
> >> >>>Is your PC infected? Get a FREE online computer virus scan from
> >> McAfee(r)
> >> >>>Security. http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963
> >> >>>
> >> >>>
> >> 
> >>>---------------------------------------------------------------------
> >> >>>To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> >> >>>For additional commands, e-mail: axis-user-help@ws.apache.org
> >> >>>
> >> >>>
> >> >>
> >> >>
> >> >
> >> >---------------------------------------------------------------------
> >> >To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> >> >For additional commands, e-mail: axis-user-help@ws.apache.org
> >> >
> >>
> >> _________________________________________________________________
> >> On the road to retirement? Check out MSN Life Events for advice on
> >> how to
> >> get there! http://lifeevents.msn.com/category.aspx?cid=Retirement
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> >> For additional commands, e-mail: axis-user-help@ws.apache.org
> >>
> >>
> >
> >
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
>For additional commands, e-mail: axis-user-help@ws.apache.org
>

_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today - it's FREE! 
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org