![](/img/trans.png)
[英]How to generate WebService client with CXF wsdl2java for online WSDL URL link
[英]Cannot generate webservice client with WSDL2Java with WSSE
我在使用Axis1.4的WSDL2Java生成客戶端類時遇到了麻煩。 WSDL包含標頭
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
顯示的錯誤是
java.io.IOException: Element {http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd}Security is referenced but not defined.
at org.apache.axis.wsdl.symbolTable.SymbolTable.checkForUndefined(SymbolTable.java:670)
at org.apache.axis.wsdl.symbolTable.SymbolTable.add(SymbolTable.java:545)
at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java:518)
at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java:495)
at org.apache.axis.wsdl.gen.Parser$WSDLRunnable.run(Parser.java:361)
at java.lang.Thread.run(Thread.java:680)
WSDL2Java的參數是: -o ./src --package ws.generated -v https://myurl/?WSDL
我是否缺少參數或某些特殊配置?
我將必須確定整個WSDL,但是看起來好像在定義wsse前綴時引用了名稱空間時,就沒有指示(wsdl2java)引擎在名稱空間中找到元素/類型定義的地方。 嘗試將以下內容添加到您的WSDL中並再次執行:
<wsdl:import namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
location="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" />
除其他元素外,此元素應與<wsdl:types>
和<wsdl:message>
元素對等。
這確實假定wsdl前綴是用wsdl定義的名稱空間(一種通用約定)標識的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.