2015-02-23 108 views
2

Config.groovy中:Grails的CXF的客戶端插件wsdlArgs -exsh意外的選擇:

cxf { 
client { 
    someService { 
     wsdlArgs = '-exsh true' 
     wsdl = 'C:\\SomeService.wsdl' 
     clientInterface = de.whatEver.service_v5.OrderPortType 
     serviceEndpointAddress = 'http://localhost:9080/' 
    } 
    } 
} 

創建nesessary類我在命令行上做 grails wsdl2java

沒有wsdlArgs在Config.groovy都能正常運作,但與選項將引發一個錯誤:

[java] Unexpected option: -exsh(true) 
[java] Usage : wsdl2java -fe|-frontend <front-end-name> -db|-databinding <data-binding-name> -wv <wsdl-version> -p <[wsdl-namespace =]package-name>* -sn <service-name> -b <binding-file-name>* -reserveClass <class-name>* -catalog <catalog-file-name> -d <output-directory> -compile -classdir <compile-classes-directory> -impl -server -client -all -autoNameResolution -allowElementReferences|-aer<=true> -defaultValues<=class-name-for-DefaultValueProvider> -ant -nexclude <schema-namespace [= java-package-name]>* -exsh <(true, false)> -noTypes -dns <Default value is true> -dex <(true, false)> -validate<[=all|basic|none]> -keep -wsdlLocation <wsdlLocation> -xjc<xjc-arguments>* -asyncMethods<[=method1,method2,...]>* -bareMethods<[=method1,method2,...]>* -mimeMethods<[=method1,method2,...]>* -noAddressBinding -faultSerialVersionUID <fault-serialVersionUID> -encoding <encoding> -exceptionSuper <exceptionSuper> -mark-generated -h|-?|-help -version|-v -verbose|-V -quiet|-q|-Q -wsdlList <wsdlurl> 
[java] WSDLToJava Error: org.apache.cxf.tools.common.toolspec.parser.BadUsageException: Unexpected option: -exsh(true) 
[java] org.apache.cxf.tools.common.ToolException: org.apache.cxf.tools.common.toolspec.parser.BadUsageException: Unexpected option: -exsh(true) 

即便利用告訴我: -exsh <(true, false)>是一個有效的選項。

如何設置此選項以通過cxf-client插件進行重新調整?

我已經試過這個選項的幾個排列,如-exsh=true-exsh(true) 沒有成功。

+1

你試過'wsdlArgs = ['-exsh','true']'? – cfrick 2015-02-23 11:00:31

+0

謝謝!這就是訣竅!我沒有嘗試過這種置換。 – physi 2015-02-23 11:11:36

回答

3

參數必須在列表中傳遞。

wsdlArgs = ['-exsh', 'true']