Pregunta

Estoy actualizando algunos clientes de servicios web en algunas aplicaciones java de edad para llamar a un servicio web de terceros axis2. He sido dotado de un archivo WSDL, por lo que he desarrollado un frasco que contiene el cliente para este servicio como se describe en el puesto (el mío) siguiente: cliente JAX-WS: ¿cuál es el camino correcto para acceder al WSDL local de .

Funciona en alguna aplicación, pero no en otros en los que se emite una inaccessibleWSDLException en el momento de crear instancias de la clase de proxy. A continuación he publicado mi archivo de JAX-WS-catálogo:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog" prefer="system">
    <system systemId="http://localhost/wsdl/SOAService.wsdl" uri="wsdl/SOAService.wsdl"/>
    <system systemId="http://schemas.xmlsoap.org/soap/encoding/" uri="wsdl/schemas.xmlsoap.org/soap/encoding.xsd"/>
    <system systemId="http://www.w3.org/2005/05/xmlmime" uri="wsdl/www.w3.org/2005/05/xmlmime.xsd"/>
</catalog>

Siempre trabajo dentro de mis entornos de desarrollo NetBeans (\ ecplise dependiendo del proyecto que estoy actualizando) y servidores (Tomcat \ Jboss 4 \ frasco con una clase de prueba).

No funciona cuando:

  • lanzo el frasco de la línea de comandos o
  • I cargar el frasco en un proceso LiveCycle 8,0 (se ejecuta en jboss 4,0)

En ambos casos da el error: "InaccessibleWSDLException", en particular sobre LiveCycle me sale el siguiente error:

2010-12-01 12:20:47,420 ERROR [com.adobe.workflow.AWS] stalling action-instance: 9989 with message: com.sun.xml.ws.wsdl.parser.InaccessibleWSDLException: 2 counts of InaccessibleWSDLException.

java.net.ConnectException: Connection refused
java.net.ConnectException: Connection refused

        at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.tryWithMex(RuntimeWSDLParser.java:172)
        at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:144)
        at com.sun.xml.ws.client.WSServiceDelegate.parseWSDL(WSServiceDelegate.java:254)
        at com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:217)
        at com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:174)
        at com.sun.xml.ws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:104)
        at javax.xml.ws.Service.<init>(Service.java:56)
        at com.ibm.eci.soaservice.SOAService.<init>(SOAService.java:50)

¿Qué significa esto excepción? No se puede encontrar el WSDL o una parte de ella? No se puede encontrar alguna biblioteca? No puede acceder a la web (WSDL contiene algo de importación de xsd externo)?

¿Fue útil?

Solución

Esto significa que LiveCycle 8.0 no está utilizando o no la búsqueda de jaxws-catalog.xml, por lo que los jaxws en tiempo de ejecución está intentando cargar el WSDL desde la ubicación literal mencionado en el resguardo del cliente, es decir, desde http: //localhost/wsdl/SOAService.wsdl lugar de mirar a la asignación prevista en JAX-WS catalog.xml y utilizando el WSDL de tu cántaro aplicación.

La clave es la

java.net.ConnectException: Conexión rechazada java.net.ConnectException: Conexión rechazada

que me dice que jaxws tiempo de ejecución es tratando de acceder al WSDL a través de HTTP.

¿Dónde pone su JAX-WS-catalog.xml? puede ser por LiveCycle que necesita ser puesto en otro lugar, además de directorio META-INF del JAR.

creo que necesita para enviar esta pregunta en los foros de LiveCycle.

Para no trabajar desde la línea de comandos, que es un poco extraño, ¿cómo es exactamente lo que se ejecuta desde la línea de comandos.

Otros consejos

Parece que buscan su archivo de certificado, busque en la que al certificado que era. Descargado ese certificado, reinicie el servidor y vuelva a intentarlo.

Saludos, Sridhar Goranti

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top