If EJBProvider wasn't using reflection to get the EJBObject, then reflection-based permission wouldn't be a problem. But since it is, to avoid ejb.jar dependency, try adding EJBProvider class to weblogic.policy. This file should be in your WL domain directory.
Gene --- Tom Jordahl <[EMAIL PROTECTED]> wrote: > > The EJBProvider (line 247) is trying to do the following: > // This code requires the use of ejb.jar, so we do the stuff below > // EJBHome ejbHome = (EJBHome) ehome; > // EJBMetaData meta = ejbHome.getEJBMetaData(); > // Class interfaceClass = meta.getRemoteInterfaceClass(); > > // Invoke the getEJBMetaData method of the ejbHome class without > // actually touching any EJB classes (i.e. no cast to EJBHome) > Method getEJBMetaData = > homeClass.getMethod("getEJBMetaData", empty_class_array); > Object metaData = > getEJBMetaData.invoke(ehome, empty_object_array); > Method getRemoteInterfaceClass = > metaData.getClass().getMethod("getRemoteInterfaceClass", > empty_class_array); > interfaceClass = > (Class) getRemoteInterfaceClass.invoke(metaData, > empty_object_array); > > > Weblogic is apprently not allowing Axis to do this. You need to get it to let that > happen. > > As a better alternative, set the <remoteInterfaceName> attribute in the WSDD > configuration so that Axis doesn't have to scrounge around in JNDI and such for this > class. > > Hope this helps. > > -- > Tom Jordahl > Macromedia Server Development > > > > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] > Sent: Monday, January 13, 2003 9:18 PM > To: [EMAIL PROTECTED] > Cc: [EMAIL PROTECTED] > Subject: Re: AXIS in Weblogic 6.1 > > > Hi, > > The previous stack trace was generated when AXIS is running in tomcat > container and the EJB web service in AXIS calls an EJB from Weblogic 6.1. > > When AXIS running in Weblogic web server, requesting for the same EJB web > service generated the same stack trace as below, > > AXIS error > Sorry, something seems to have gone wrong... here are the details: > > Fault - org.apache.axis.ConfigurationException: > java.lang.IllegalAccessException > AxisFault > faultCode: {http://xml.apache.org/axis/}Server.userException > faultString: java.lang.IllegalAccessException > faultActor: null > faultDetail: > stackTrace: java.lang.IllegalAccessException > at java.lang.reflect.Method.invoke(Native Method) > at org.apache.axis.providers.java.EJBProvider.getServiceClass > (EJBProvider.java:247) > at org.apache.axis.providers.java.JavaProvider.initServiceDesc > (JavaProvider.java:535) > at > org.apache.axis.handlers.soap.SOAPService.getInitializedServiceDesc > (SOAPService.java:322) > at org.apache.axis.deployment.wsdd.WSDDService.makeNewInstance > (WSDDService.java:477) > at org.apache.axis.deployment.wsdd.WSDDDeployableItem.getNewInstance > (WSDDDeployableItem.java:312) > at org.apache.axis.deployment.wsdd.WSDDDeployableItem.getInstance > (WSDDDeployableItem.java:298) > at org.apache.axis.deployment.wsdd.WSDDDeployment.getService > (WSDDDeployment.java:492) > at org.apache.axis.configuration.FileProvider.getService > (FileProvider.java:262) > at org.apache.axis.AxisEngine.getService(AxisEngine.java:275) > at org.apache.axis.MessageContext.setTargetService > (MessageContext.java:586) > at org.apache.axis.handlers.http.URLMapper.invoke(URLMapper.java:89) > at org.apache.axis.handlers.http.URLMapper.generateWSDL > (URLMapper.java:97) > at org.apache.axis.strategies.WSDLGenStrategy.visit > (WSDLGenStrategy.java:72) > at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:156) > at org.apache.axis.SimpleChain.generateWSDL(SimpleChain.java:143) > at org.apache.axis.server.AxisServer.generateWSDL > (AxisServer.java:456) > at org.apache.axis.transport.http.AxisServlet.processWsdlRequest > (AxisServlet.java:428) > at org.apache.axis.transport.http.AxisServlet.doGet > (AxisServlet.java:280) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) > at org.apache.axis.transport.http.AxisServletBase.service > (AxisServletBase.java:335) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > at weblogic.servlet.internal.ServletStubImpl.invokeServlet > (ServletStubImpl.java:265) > at weblogic.servlet.internal.ServletStubImpl.invokeServlet > (ServletStubImpl.java:200) > at weblogic.servlet.internal.WebAppServletContext.invokeServlet > (WebAppServletContext.java:2456) > at weblogic.servlet.internal.ServletRequestImpl.execute > (ServletRequestImpl.java:2039) > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139) > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120) > > > I really have no idea why this is happening. > > > BEOH > > > > Not that I doubt you, but the stacktrace seem to indicate Axis is > > running in Tomcat and not WL? > > > > --- [EMAIL PROTECTED] wrote: > >> Hi, > >> > >> I already successfully deployed both AXIS war into Weblogic 6.1 and > >> one of the EJB (in WL server) to the AXIS. > >> > >> When I tried to hit http://localhost:7001/axis/services/UserBean?WSDL, > >> I encountered the following problem. > >> > >> AXIS error > >> Sorry, something seems to have gone wrong... here are the details: > >> > >> Fault - org.apache.axis.ConfigurationException: > >> java.lang.IllegalAccessException > >> AxisFault > >> faultCode: {http://xml.apache.org/axis/}Server.userException > >> faultString: java.lang.IllegalAccessException > >> faultActor: null > >> faultDetail: > >> stackTrace: java.lang.IllegalAccessException > >> at java.lang.reflect.Method.invoke(Native Method) > >> at org.apache.axis.providers.java.EJBProvider.getServiceClass > >> (EJBProvider.java:247) > >> at org.apache.axis.providers.java.JavaProvider.initServiceDesc > >> (JavaProvider.java:535) > >> at > >> org.apache.axis.handlers.soap.SOAPService.getInitializedServiceDesc > >> (SOAPService.java:322) > >> at org.apache.axis.deployment.wsdd.WSDDService.makeNewInstance > >> (WSDDService.java:477) > >> at > >> org.apache.axis.deployment.wsdd.WSDDDeployableItem.getNewInstance > >> (WSDDDeployableItem.java:312) > >> at > >> org.apache.axis.deployment.wsdd.WSDDDeployableItem.getInstance > >> (WSDDDeployableItem.java:298) > >> at org.apache.axis.deployment.wsdd.WSDDDeployment.getService > >> (WSDDDeployment.java:492) > >> at org.apache.axis.configuration.FileProvider.getService > >> (FileProvider.java:262) > >> at org.apache.axis.AxisEngine.getService(AxisEngine.java:275) > >> at org.apache.axis.MessageContext.setTargetService > >> (MessageContext.java:586) > >> at org.apache.axis.handlers.http.URLMapper.invoke > >> (URLMapper.java:89) at > >> org.apache.axis.handlers.http.URLMapper.generateWSDL > >> (URLMapper.java:97) > >> at org.apache.axis.strategies.WSDLGenStrategy.visit > >> (WSDLGenStrategy.java:72) > >> at > >> org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:156) > >> at > >> org.apache.axis.SimpleChain.generateWSDL(SimpleChain.java:143) > >> at org.apache.axis.server.AxisServer.generateWSDL > >> (AxisServer.java:456) > >> at > >> org.apache.axis.transport.http.AxisServlet.processWsdlRequest > >> (AxisServlet.java:428) > >> at org.apache.axis.transport.http.AxisServlet.doGet > >> (AxisServlet.java:280) > >> at > >> javax.servlet.http.HttpServlet.service(HttpServlet.java:740) > >> at org.apache.axis.transport.http.AxisServletBase.service > >> (AxisServletBase.java:335) > >> at > >> javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > >> at > >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter > >> (ApplicationFilterChain.java:247) > >> at org.apache.catalina.core.ApplicationFilterChain.doFilter > >> (ApplicationFilterChain.java:193) > >> at org.apache.catalina.core.StandardWrapperValve.invoke > >> (StandardWrapperValve.java:260) > >> at > >> > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > >> eNext(StandardPipeline.java:646) > >> at org.apache.catalina.core.StandardPipeline.invoke > >> (StandardPipeline.java:483) > === message truncated ===