axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yates, Danny (ANTS)" <danny.ya...@ants.co.uk>
Subject RE: Packaging Axis into an EAR file
Date Fri, 13 Dec 2002 09:17:37 GMT
Hi Michael,

May I ask why the EJBs need to see Axis? We use Axis in WLS6.1sp4
with no problems, but we use it to provide a simple facade to a
Stateless Session Bean. That is, we expose our business methods
from the bean and have a thing POJO which Axis calls. This POJO
is responsible for understanding the SOAP call (specifically,
dealing with attachments if there are any) and then looking up
the bean in JNDI and passing the call on.

Regards,

Dan.

-- 
Danny Yates
Technical Architect
Abbey National Treasury Services
E-mail: Danny.Yates@ants.co.uk
Phone: +44 20 7756 5012
Fax: +44 20 7612 4342


-----Original Message-----
From: Michael Hudson [mailto:mike@slac.com]
Sent: 12 December 2002 22:54
To: axis-user@xml.apache.org
Subject: Packaging Axis into an EAR file



I'm using Weblogic 6.1sp4, and Axis 1.0

I can package Axis as a WAR file inside of my EAR file, and because of the
Weblogic classloader hierarchy, I don't have to do anything else for Axis
to see my EJBs in my EAR to act on them.

However, if my EJBs want to use Axis... the only solution I have found
that works is to put Axis in my system classpath before starting Weblogic.

I did try to put all the Axis jars into the root level of my EAR file, and
then add those jars to the manifest file of the EJB that needed to use
Axis.  That seemed to work... until Weblogic then tried to deploy my Axis
WAR.  Regardless of whether I actually had the Axis JARs in my Axis WAR's
WEB-INF/lib directory or not, I would get the following:

<Dec 12, 2002 5:22:11 PM EST> <Error> <HTTP>
<[WebAppServletContext(2018366,axis
,/axis)] Error loading servlet: "AdminServlet"
java.lang.NoClassDefFoundError: javax/xml/soap/SOAPException
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:120)
        at
org.apache.axis.transport.http.AxisServletBase.class$(AxisServletBase
.java:87)
        at
org.apache.axis.transport.http.AxisServletBase.<clinit>(AxisServletBa
se.java:94)
        at java.lang.Class.newInstance0(Native Method)
        at java.lang.Class.newInstance(Class.java:237)
        at
weblogic.servlet.internal.ServletStubImpl.createServlet(ServletStubIm
pl.java:690)
	...

No matter what I do... put stuff in the EAR's manifest or the WAR's
manifest or whatever... it doesn't seem to work.  Essentially, it does
seem to be finding axis.jar, but it doesn't seem to be finding saaj.jar.
You'd think BECAUSE of the classloader hierarchy in Weblogic, that it
should see saaj.jar in the root EAR.  However, if I leave that in the root
EAR, but go ahead and put a copy of saaj.jar in AXIS WAR's WEB-INF/lib
directory, it still doesn't see it.  That doesn't make sense, because, if
I get rid of the copy in the root EAR, it works again.

I assume this has something to do with the servlet obtaining the
appropriate classpathloader.  But I have no idea how to fix it?

Any ideas?  Does anybody else have to do what I'm doing?  How has
everybody else packaged Axis inside of a WAR inside of an EAR, so that
Axis can see the EJBs, and the EJBs can see Axis???

Thanks,

============================================================================
==
Michael J. Hudson    |                               |        mike@slac.com

                "Search for the perfect church, if you will;
 		       when you find it, join it, and
       realize that on that day it becomes something less than perfect."
 -Rev. Andrew Greeley responding to the moral crisis in the Catholic church.

                     |                               |
============================================================================
==


***************************************************************************
This communication (including any attachments) contains confidential information.  If you
are not the intended recipient and you have received this communication in error, you should
destroy it without copying, disclosing or otherwise using its contents.  Please notify the
sender immediately of the error.

Internet communications are not necessarily secure and may be intercepted or changed after
they are sent.  Abbey National Treasury Services plc does not accept liability for any loss
you may suffer as a result of interception or any liability for such changes.  If you wish
to confirm the origin or content of this communication, please contact the sender by using
an alternative means of communication.

This communication does not create or modify any contract and, unless otherwise stated, is
not intended to be contractually binding.

Abbey National Treasury Services plc. Registered Office:  Abbey National House, 2 Triton Square,
Regents Place, London NW1 3AN.  Registered in England under Company Registration Number: 2338548.
 Regulated by the Financial Services Authority (FSA).
***************************************************************************


Mime
View raw message