I'm trying to generate java code starting from a wsdl file as in the https://axis.apache.org/axis2/java/core/docs/userguide-creatingclients-xmlbeans.html guide.
I created this simple axis2wsdlToJava.bat to be customized for my future edits, but still I can't figure it out why or what dependency is missing.
set JAVA_HOME=C:\PROGRA~1\Java\jdk1.8.0_121
set AXIS2_HOME=C:\Users\conr72\Downloads\axis2-1.8.0
set FILE_NAME=Axis2UserGuide.wsdl
set PACKAGE=org.apache.axis2.axis2userguide
%AXIS2_HOME%\bin\wsdl2java.bat -uri %FILE_NAME% -p %PACKAGE% -d xmlbeans -s -o build\client
I edited the C:\Users\conr72\Downloads\axis2-1.8.0\bin\wsdl2java.bat, adding an echo Using AXIS2_CLASS_PATH: %AXIS2_CLASS_PATH%
, to check what is the AXIS2_CLASS_PATH it's using.
And if I run axis2wsdlToJava.bat, I get the following error message:
C:\Users\conr72\Desktop\k8s\workspace\wsdl>C:\Users\conr72\Downloads\axis2-1.8.0\bin\wsdl2java.bat -uri Axis2UserGuide.wsdl -p org.apache.axis2.axis2userguide -d xmlbeans -s -o build\client
Using AXIS2_HOME: C:\Users\conr72\Downloads\axis2-1.8.0
Using JAVA_HOME: C:\PROGRA~1\Java\jdk1.8.0_121
Using AXIS2_CLASS_PATH: C:\Users\conr72\Downloads\axis2-1.8.0;C:\Users\conr72\Downloads\axis2-1.8.0\lib\annotations-13.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\antlr-2.7.7.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\apache-mime4j-core-0.8.4.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axiom-api-1.3.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axiom-dom-1.3.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axiom-impl-1.3.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axiom-jaxb-1.3.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-adb-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-adb-codegen-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-ant-plugin-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-clustering-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-codegen-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-corba-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-fastinfoset-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-java2wsdl-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-jaxbri-codegen-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-jaxws-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-jibx-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-jibx-codegen-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-json-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-kernel-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-metadata-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-mtompolicy-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-saaj-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-soapmonitor-servlet-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-spring-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-transport-base-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-transport-http-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-transport-jms-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-transport-local-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-transport-mail-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-transport-tcp-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-transport-udp-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-transport-xmpp-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\axis2-xmlbeans-1.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\bcel-6.4.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\checker-qual-3.8.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\codemodel-2.3.4.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\commons-cli-1.4.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\commons-codec-1.11.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\commons-fileupload-1.4.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\commons-io-2.11.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\commons-lang3-3.12.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\commons-logging-1.2.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\dtd-parser-1.4.4.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\encoder-1.2.3.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\error_prone_annotations-2.5.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\failureaccess-1.0.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\geronimo-annotation_1.0_spec-1.1.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\geronimo-jaxws_2.2_spec-1.2.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\geronimo-ws-metadata_2.0_spec-1.1.3.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\google-java-format-1.7.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\gson-2.8.7.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\guava-30.1.1-jre.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\httpclient-4.5.13.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\httpcore-4.4.14.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\istack-commons-runtime-3.0.12.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\istack-commons-tools-3.0.12.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\j2objc-annotations-1.3.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jakarta.activation-1.2.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jakarta.activation-api-1.2.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jakarta.annotation-api-1.3.5.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jakarta.jws-api-2.1.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jakarta.mail-1.6.7.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jakarta.xml.bind-api-2.3.3.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jakarta.xml.soap-api-1.4.2.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jakarta.xml.ws-api-2.3.3.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\javac-shaded-9+181-r4173-1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\javax.servlet-api-3.1.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\javax.transaction-api-1.3.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jaxb-jxc-2.3.3.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jaxb-runtime-2.3.4.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jaxb-xjc-2.3.4.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jaxen-1.2.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jaxws-tools-2.3.3.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jettison-1.4.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jibx-bind-1.3.3.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jibx-run-1.3.3.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\joda-time-2.10.5.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jsr305-3.0.2.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\jsr311-api-1.1.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\kotlin-stdlib-1.4.31.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\kotlin-stdlib-common-1.4.20.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\log4j-api-2.14.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\log4j-core-2.14.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\log4j-jcl-2.14.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\mex-1.8.0-impl.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\moshi-1.12.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\moshi-adapters-1.12.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\neethi-3.1.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\okio-2.10.0.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\qdox-1.12.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\relaxng-datatype-2.3.4.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\rngom-2.3.4.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\serializer-2.7.2.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\spring-aop-5.3.9.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\spring-expression-5.3.9.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\spring-jcl-5.3.9.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\stax2-api-4.2.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\tomcat-juli-10.0.8.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\tomcat-tribes-10.0.8.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\txw2-2.3.4.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\woden-core-1.0M10.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\woodstox-core-6.2.6.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\wsdl4j-1.6.3.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\xalan-2.7.2.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\xml-resolver-1.2.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\xmlbeans-3.0.1.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\xmlschema-core-2.2.5.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\xpp3-1.1.3.4.O.jar;C:\Users\conr72\Downloads\axis2-1.8.0\lib\xsom-2.3.4.jar
Retrieving document at 'Axis2UserGuide.wsdl'.
Exception in thread "main" org.apache.axis2.wsdl.codegen.CodeGenerationException: java.lang.RuntimeException: XMLBeans binding extension not in classpath
at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:163)
at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:54)
at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:24)
Caused by: java.lang.RuntimeException: XMLBeans binding extension not in classpath
at org.apache.axis2.wsdl.codegen.extension.XMLBeansExtension.engage(XMLBeansExtension.java:90)
at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:116)
... 2 more
Since I see in the classpath the C:\Users\conr72\Downloads\axis2-1.8.0\lib\xmlbeans-3.0.1.jar; dependency... What am I missing?
While decompiling axis2-codegen-1.8.0
I found out the required class org.apache.axis2.xmlbeans.CodeGenerationUtility
from axis2-xmlbeans-1.8.0
is missing.
But in version 1.7.9 that class is present, so I tried copypasting axis2-xmlbeans-1.7.9
, renaming it, in the new classpath and it worked out.