2015-02-23 107 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']