Return-Path: Delivered-To: apmail-ws-axis-user-archive@www.apache.org Received: (qmail 19000 invoked from network); 27 Sep 2004 20:15:10 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 27 Sep 2004 20:15:10 -0000 Received: (qmail 71495 invoked by uid 500); 27 Sep 2004 20:14:52 -0000 Delivered-To: apmail-ws-axis-user-archive@ws.apache.org Received: (qmail 71464 invoked by uid 500); 27 Sep 2004 20:14:51 -0000 Mailing-List: contact axis-user-help@ws.apache.org; run by ezmlm Precedence: bulk Reply-To: axis-user@ws.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list axis-user@ws.apache.org Received: (qmail 71455 invoked by uid 99); 27 Sep 2004 20:14:51 -0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: pass (hermes.apache.org: local policy) Received: from [208.40.35.6] (HELO mail.ArmadaCentral.com) (208.40.35.6) by apache.org (qpsmtpd/0.28) with ESMTP; Mon, 27 Sep 2004 13:14:50 -0700 X-MimeOLE: Produced By Microsoft Exchange V6.0.6249.0 content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Subject: RE: two axis-ized services in one servlet container Date: Mon, 27 Sep 2004 16:16:19 -0400 Message-ID: <76AACC68F681F6429487F4FA30C45BD1CE44@col-ex01.ArmadaCentral.com> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: two axis-ized services in one servlet container Thread-Index: AcSkwnYn43wPs/NORy6ZuCR3NXnJOQADFblA From: "Matt Valerio" To: , "Brian H. Ward" X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N That did the trick... Thanks. -----Original Message----- From: Brian H. Ward [mailto:glyphrider@gmail.com] Sent: Monday, September 27, 2004 2:46 PM To: axis-user@ws.apache.org Subject: Re: two axis-ized services in one servlet container Try moving the axis common code up to the server level instead of buring it into both WAR files. Java can have issues when ClassLoaders are used to insulate various "contexts" within a single JVM process. We see [have seen] this a lot in WebSphere, though not explicitly with Axis. It can manifect itself as LinkageErrors, ClassCastExceptions, and even IllegalAccessExceptions. In general, when ClassLoaders are involved (in J2EE containers), always keep one an only one copy of common code in a JAR that is accessible to all clients (one level higher than where it is used).=20 This means that EJB interfaces used by both the EJB bean and by classes in a WAR file must be placed in a "shared" JAR file that is mutually accessible -- and copies don't work. Anything that spans your ?AR file must be installed at the server level (common\lib in Tomcat, I believe). Hope this helps.... --- bhw On Mon, 27 Sep 2004 14:34:26 -0400, Matt Valerio wrote: > Anyone have any ideas or suggestions with this??? Bueller???? = Bueller???? >=20 >=20 >=20 > -----Original Message----- > From: Matt Valerio > Sent: Friday, September 24, 2004 11:02 AM > To: Axis-User (E-mail) > Subject: two axis-ized services in one servlet container >=20 > I have configured two axis enabled webservices in one servlet = container (tomcat 5.0) and I'm having some problems. I'm using Axis 1.1 = and have created these two services as specified in the "Advanced = Installation" section of the Axis installation instructions. For the = sake of explaining my problem say I have two services configured in on = servlet container - Service1 and Service2. I can browse to the services = context of Service1 and it works but then I browse the services context = of Service2 and it doesn't work. I then restart tomcat and browse to = Service2 first and it works but then Service 1 doesn't work. I checked = the tomcat logs and found the error attached below. I'm relatively new = to axis so hopefully it is some bonehead newby problem. Any help with = this issue would be greatly appreciated. >=20 > 2004-09-24 08:46:08 StandardWrapperValve[AxisServlet]: = Servlet.service() for servlet AxisServlet threw exception > java.lang.LinkageError: loader constraints violated when linking = javax/xml/namespace/QName class > at = org.apache.axis.encoding.TypeMappingRegistryImpl.(TypeMappingRegist= ryImpl.java:180) > at = org.apache.axis.deployment.wsdd.WSDDDeployment.(WSDDDeployment.java= :510) > at = org.apache.axis.deployment.wsdd.WSDDDocument.(WSDDDocument.java:104= ) > at = org.apache.axis.configuration.FileProvider.configureEngine(FileProvider.j= ava:209) > at org.apache.axis.AxisEngine.init(AxisEngine.java:187) > at org.apache.axis.AxisEngine.(AxisEngine.java:172) > at = org.apache.axis.server.AxisServer.(AxisServer.java:126) > at = org.apache.axis.server.DefaultAxisServerFactory.createServer(DefaultAxisS= erverFactory.java:148) > at = org.apache.axis.server.DefaultAxisServerFactory.getServer(DefaultAxisServ= erFactory.java:112) > at = org.apache.axis.server.AxisServer.getServer(AxisServer.java:111) > at = org.apache.axis.transport.http.AxisServletBase.getEngine(AxisServletBase.= java:221) > at = org.apache.axis.transport.http.AxisServletBase.getEngine(AxisServletBase.= java:187) > at = org.apache.axis.transport.http.AxisServlet.doGet(AxisServlet.java:224) > at = javax.servlet.http.HttpServlet.service(HttpServlet.java:743) > at = org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.ja= va:339) > at = javax.servlet.http.HttpServlet.service(HttpServlet.java:856) > at = org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat= ionFilterChain.java:284) > at = org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte= rChain.java:204) > at = org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve= .java:257) > at = org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCon= text.java:151) > at = org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:56= 7) > at = org.apache.catalina.core.StandardContextValve.invokeInternal(StandardCont= extValve.java:245) > at = org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve= .java:199) > at = org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCon= text.java:151) > at = org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:56= 7) > at = org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:= 184) > at = org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCon= text.java:151) > at = org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:= 164) > at = org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCon= text.java:149) > at = org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:56= 7) > at = org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.j= ava:156) > at = org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCon= text.java:151) > at = org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:56= 7) > at = org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972) > at = org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206) > at = org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:833= ) > at = org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processCo= nnection(Http11Protocol.java:732) > at = org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:619= ) > at = org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.= java:688) > at java.lang.Thread.run(Thread.java:534) >