0

I would like to automatically create the handler-chain using wsimport and a binding file. The annotation @HandlerChain is also created at the target class, but the reference to the XML as well as the XML itself is not created.

<?xml version="1.0" encoding="UTF-8"?>
<jaxws:bindings version="3.0"
                xmlns="http://java.sun.com/xml/ns/jaxws" 
                xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb"
                xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
                xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
                xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
                xmlns:javaee="http://java.sun.com/xml/ns/javaee"
                xmlns:xs="http://www.w3.org/2001/XMLSchema"
                xmlns:jaxws="https://jakarta.ee/xml/ns/jaxws"
                jaxb:extensionBindingPrefixes="xjc"
                wsdlLocation="WSDL_QUERY_OUT.XML"
>

    <!-- Erstellen der Handler-Chain-Annotationen -->
    <jaxws:bindings node="wsdl:definitions">
        <javaee:handler-chains>
            <javaee:handler-chain>      
                <javaee:handler>
                    <javaee:handler-name>SoapEndpointHandler</javaee:handler-name>      
                    <javaee:handler-class>com.test.resources.SoapEndpointHandler</javaee:handler-class>                                            
                </javaee:handler> 
            </javaee:handler-chain>
        </javaee:handler-chains>
    </jaxws:bindings>
</jaxws:bindings>

What am I doing wrong?

2
  • What error you are getting? Commented Oct 10, 2023 at 14:24
  • I do not get any errors. The annotation is created, but without parameters. In the code there is only @HandlerChain. The brackets and the path are missing. Normally it should look like this: @HandlerChain(file=".../.../.../handlers.xml"). Whereby the path specification should be set dynamically by wsimport. Commented Oct 10, 2023 at 18:14

1 Answer 1

1

I have found my mistake. In the bindings file I had entered a wrong namespace for javaee.

wrong namespace: xmlns:javaee="http://java.sun.com/xml/ns/javaee"

correct namespace: xmlns:javaee="https://jakarta.ee/xml/ns/jakartaee"

corrected example

<?xml version="1.0" encoding="UTF-8"?>
<jaxws:bindings version="3.0"
                xmlns="http://java.sun.com/xml/ns/jaxws" 
                xmlns:jaxb="https://jakarta.ee/xml/ns/jaxb"
                xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
                xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
                xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
                xmlns:javaee="https://jakarta.ee/xml/ns/jakartaee"
                xmlns:xs="http://www.w3.org/2001/XMLSchema"
                xmlns:jaxws="https://jakarta.ee/xml/ns/jaxws"
                jaxb:extensionBindingPrefixes="xjc"
                wsdlLocation="WSDL_QUERY_OUT.XML"
>

    <!-- Erstellen der Handler-Chain-Annotationen -->
    <jaxws:bindings node="wsdl:definitions">
        <javaee:handler-chains>
            <javaee:handler-chain>      
                <javaee:handler>
                    <javaee:handler-name>SoapEndpointHandler</javaee:handler-name>      
                    <javaee:handler-class>com.test.resources.SoapEndpointHandler</javaee:handler-class>                                            
                </javaee:handler> 
            </javaee:handler-chain>
        </javaee:handler-chains>
    </jaxws:bindings>
</jaxws:bindings>
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.