ProxyContext is not visible from class loader
mavalla Jan 25, 2006 6:34 AMHi,
I am developing my first Web Service using Jboss-WS and it works fine.
The web service is called UseOccupationsService, the method to call String getUseOccupationDescriptions(String, String) and it is using the following location: http://127.0.0.1:8080/MRE/webservices/UseOccupations.
But when I access this page with a browser (http://127.0.0.1:8080/MRE/webservices/UseOccupations) I get the following error:
Sorry, something seems to have gone wrong... here are the details:
java.lang.IllegalArgumentException: interface org.jboss.mx.util.ProxyContext is not visible from class loader
And the exception in the log is:
[AxisServlet] Exception: java.lang.IllegalArgumentException: interface org.jboss.mx.util.ProxyContext is not visible from class loader at java.lang.reflect.Proxy.getProxyClass(Proxy.java:353) at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581) at org.jboss.mx.util.MBeanProxy.get(MBeanProxy.java:76) at org.jboss.mx.util.MBeanProxy.get(MBeanProxy.java:64) at org.jboss.webservice.server.AbstractServlet.reportAvailableServices(AbstractServlet.java:87) at org.jboss.webservice.server.ServiceEndpointServlet.doGet(ServiceEndpointServlet.java:69) at javax.servlet.http.HttpServlet.service(HttpServlet.java:697) at org.jboss.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) 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.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59) 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:856) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) at java.lang.Thread.run(Thread.java:595)
As I said before, the web service works fine, but I am a little worried about this error. I know that the page should show a list of the web services located in the server.
Here I send you the configuration files:
UseOccupationService.wsdl:
<?xml version="1.0" encoding="UTF-8"?> <definitions name="UseOccupationsService" targetNamespace="http://ReservationSystem.hotelebusiness.com/webservices" xmlns:tns="http://ReservationSystem.hotelebusiness.com/webservices" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns2="http://ReservationSystem.hotelebusiness.com/webservices/types" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"> <types> <schema targetNamespace="http://ReservationSystem.hotelebusiness.com/webservices/types" xmlns:tns="http://ReservationSystem.hotelebusiness.com/webservices/types" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://www.w3.org/2001/XMLSchema"> <complexType name="getUseOccupationDescriptions"> <sequence> <element name="String_1" type="string" nillable="true"/> <element name="String_2" type="string" nillable="true"/></sequence></complexType> <complexType name="getUseOccupationDescriptionsResponse"> <sequence> <element name="result" type="string" nillable="true"/></sequence></complexType> <element name="getUseOccupationDescriptions" type="tns:getUseOccupationDescriptions"/> <element name="getUseOccupationDescriptionsResponse" type="tns:getUseOccupationDescriptionsResponse"/></schema></types> <message name="IUseOccupationsWS_getUseOccupationDescriptions"> <part name="parameters" element="ns2:getUseOccupationDescriptions"/></message> <message name="IUseOccupationsWS_getUseOccupationDescriptionsResponse"> <part name="result" element="ns2:getUseOccupationDescriptionsResponse"/></message> <portType name="IUseOccupationsWS"> <operation name="getUseOccupationDescriptions"> <input message="tns:IUseOccupationsWS_getUseOccupationDescriptions"/> <output message="tns:IUseOccupationsWS_getUseOccupationDescriptionsResponse"/></operation></portType> <binding name="IUseOccupationsWSBinding" type="tns:IUseOccupationsWS"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/> <operation name="getUseOccupationDescriptions"> <soap:operation soapAction=""/> <input> <soap:body use="literal"/></input> <output> <soap:body use="literal"/></output></operation></binding> <service name="UseOccupationsService"> <port name="IUseOccupationsWSPort" binding="tns:IUseOccupationsWSBinding"> <soap:address location="REPLACE_WITH_ACTUAL_URL"/></port></service></definitions>
jaxrpc-mapping.xml:
<?xml version="1.0" encoding="UTF-8"?> <java-wsdl-mapping xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.1" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_jaxrpc_mapping_1_1.xsd"> <package-mapping> <package-type>com.hotelebusiness.ReservationSystem.web.webservices</package-type> <namespaceURI>http://ReservationSystem.hotelebusiness.com/webservices/types</namespaceURI> </package-mapping> <package-mapping> <package-type>com.hotelebusiness.ReservationSystem.web.webservices</package-type> <namespaceURI>http://ReservationSystem.hotelebusiness.com/webservices</namespaceURI> </package-mapping> <java-xml-type-mapping> <java-type>com.hotelebusiness.ReservationSystem.web.webservices.IUseOccupationsWS_getUseOccupationDescriptions_RequestStruct</java-type> <root-type-qname xmlns:typeNS="http://ReservationSystem.hotelebusiness.com/webservices/types">typeNS:getUseOccupationDescriptions</root-type-qname> <qname-scope>complexType</qname-scope> <variable-mapping> <java-variable-name>String_1</java-variable-name> <xml-element-name>String_1</xml-element-name> </variable-mapping> <variable-mapping> <java-variable-name>String_2</java-variable-name> <xml-element-name>String_2</xml-element-name> </variable-mapping> </java-xml-type-mapping> <java-xml-type-mapping> <java-type>com.hotelebusiness.ReservationSystem.web.webservices.IUseOccupationsWS_getUseOccupationDescriptions_ResponseStruct</java-type> <root-type-qname xmlns:typeNS="http://ReservationSystem.hotelebusiness.com/webservices/types">typeNS:getUseOccupationDescriptionsResponse</root-type-qname> <qname-scope>complexType</qname-scope> <variable-mapping> <java-variable-name>result</java-variable-name> <xml-element-name>result</xml-element-name> </variable-mapping> </java-xml-type-mapping> <service-interface-mapping> <service-interface>com.hotelebusiness.ReservationSystem.web.webservices.UseOccupationsService</service-interface> <wsdl-service-name xmlns:serviceNS="http://ReservationSystem.hotelebusiness.com/webservices">serviceNS:UseOccupationsService</wsdl-service-name> <port-mapping> <port-name>IUseOccupationsWSPort</port-name> <java-port-name>IUseOccupationsWSPort</java-port-name> </port-mapping> </service-interface-mapping> <service-endpoint-interface-mapping> <service-endpoint-interface>com.hotelebusiness.ReservationSystem.web.webservices.IUseOccupationsWS</service-endpoint-interface> <wsdl-port-type xmlns:portTypeNS="http://ReservationSystem.hotelebusiness.com/webservices">portTypeNS:IUseOccupationsWS</wsdl-port-type> <wsdl-binding xmlns:bindingNS="http://ReservationSystem.hotelebusiness.com/webservices">bindingNS:IUseOccupationsWSBinding</wsdl-binding> <service-endpoint-method-mapping> <java-method-name>getUseOccupationDescriptions</java-method-name> <wsdl-operation>getUseOccupationDescriptions</wsdl-operation> <wrapped-element/> <method-param-parts-mapping> <param-position>0</param-position> <param-type>java.lang.String</param-type> <wsdl-message-mapping> <wsdl-message xmlns:wsdlMsgNS="http://ReservationSystem.hotelebusiness.com/webservices">wsdlMsgNS:IUseOccupationsWS_getUseOccupationDescriptions</wsdl-message> <wsdl-message-part-name>String_1</wsdl-message-part-name> <parameter-mode>IN</parameter-mode> </wsdl-message-mapping> </method-param-parts-mapping> <method-param-parts-mapping> <param-position>1</param-position> <param-type>java.lang.String</param-type> <wsdl-message-mapping> <wsdl-message xmlns:wsdlMsgNS="http://ReservationSystem.hotelebusiness.com/webservices">wsdlMsgNS:IUseOccupationsWS_getUseOccupationDescriptions</wsdl-message> <wsdl-message-part-name>String_2</wsdl-message-part-name> <parameter-mode>IN</parameter-mode> </wsdl-message-mapping> </method-param-parts-mapping> <wsdl-return-value-mapping> <method-return-value>java.lang.String</method-return-value> <wsdl-message xmlns:wsdlMsgNS="http://ReservationSystem.hotelebusiness.com/webservices">wsdlMsgNS:IUseOccupationsWS_getUseOccupationDescriptionsResponse</wsdl-message> <wsdl-message-part-name>result</wsdl-message-part-name> </wsdl-return-value-mapping> </service-endpoint-method-mapping> </service-endpoint-interface-mapping> </java-wsdl-mapping>
webservices.xml:
<webservices xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_web_services_1_1.xsd" version="1.1"> <webservice-description> <webservice-description-name>UseOccupationsService</webservice-description-name> <wsdl-file>WEB-INF/wsdl/UseOccupationsService.wsdl</wsdl-file> <jaxrpc-mapping-file>WEB-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file> <port-component> <port-component-name>PortComponent</port-component-name> <wsdl-port>IUseOccupationsWSPort</wsdl-port> <service-endpoint-interface>com.hotelebusiness.ReservationSystem.web.webservices.IUseOccupationsWS</service-endpoint-interface> <service-impl-bean> <servlet-link>UseOccupations</servlet-link> </service-impl-bean> </port-component> </webservice-description> </webservices>
web.xml (only the begining):
<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd"> <web-app> <servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param-value> </init-param> <init-param> <param-name>debug</param-name> <param-value>2</param-value> </init-param> <init-param> <param-name>detail</param-name> <param-value>2</param-value> </init-param> <!-- jboss location, see EJBFactory.java --> <init-param> <param-name>PROVIDER_URL</param-name> <param-value>127.0.0.1:1099</param-value> </init-param> <load-on-startup>2</load-on-startup> </servlet> <!-- Web services --> <servlet> <servlet-name>UseOccupations</servlet-name> <servlet-class>com.hotelebusiness.ReservationSystem.web.webservices.UseOccupationsWS</servlet-class> </servlet> <!-- Standard Action Servlet Mapping --> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <!-- Servlet mapping for webservices --> <servlet-mapping> <servlet-name>UseOccupations</servlet-name> <url-pattern>webservices/UseOccupations</url-pattern> </servlet-mapping> <!-- The Session timeout in minutes --> <session-config> <session-timeout>15</session-timeout> </session-config> <!-- The Usual Welcome File List --> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list>
I tried to find the same error in the forum and in google and no luck.
Any help would be greatly appreciated.
Thank you very much,
Manuel Valladares