Thank you for the suggestion. I have added the <remoteInterfaceName></remoteInterfaceName> tag in the WSDD file. It works.
BEOH > 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 ===