[英]Running webservice that is generated from wsdl2java cxf
我正在嘗試運行使用cxf從wsdl生成的webservice。
我想念什么?
compile:
GreeterServer:
[java] Starting Server
[java] After implementor
[java] Before publish
[java] Exception in thread "main" java.lang.ExceptionInInitializerError
[java] at org.eclipse.jetty.util.component.AbstractLifeCycle.<clinit>(AbstractLifeCycle.java:33)
[java] at org.apache.cxf.transport.http_jetty.JettyHTTPDestination.activate(JettyHTTPDestination.java:178)
[java] at org.apache.cxf.transport.AbstractObservable.setMessageObserver(AbstractObservable.java:48)
[java] at org.apache.cxf.binding.AbstractBaseBindingFactory.addListener(AbstractBaseBindingFactory.java:97)
[java] at org.apache.cxf.binding.soap.SoapBindingFactory.addListener(SoapBindingFactory.java:901)
[java] at org.apache.cxf.endpoint.ServerImpl.start(ServerImpl.java:131)
[java] at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:349)
[java] at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:247)
[java] at org.apache.cxf.jaxws.spi.ProviderImpl.createAndPublishEndpoint(ProviderImpl.java:151)
[java] at javax.xml.ws.Endpoint.publish(Endpoint.java:57)
[java] at org.apache.hello_world_soap_http.Greeter_SoapPort_Server.<init>(Greeter_SoapPort_Server.java:21)
[java] at org.apache.hello_world_soap_http.Greeter_SoapPort_Server.main(Greeter_SoapPort_Server.java:26)
[java] Caused by: java.lang.IllegalArgumentException: key can't be empty
[java] at java.lang.System.checkKey(System.java:774)
[java] at java.lang.System.getProperty(System.java:647)
[java] at org.eclipse.jetty.util.log.Log$1.run(Log.java:122)
[java] at java.security.AccessController.doPrivileged(Native Method)
[java] at org.eclipse.jetty.util.log.Log.<clinit>(Log.java:85)
[java] ... 12 more
[java] Java Result: 1
BUILD SUCCESSFUL
Total time: 1 second
不知道是什么原因造成的。 看來,您的JVM從System.getProperties()。propertyNames()返回了空屬性名稱。 在調用cxf代碼之前,可以嘗試執行以下操作:
@SuppressWarnings("unchecked")
Enumeration<String> systemKeyEnum = (Enumeration<String>)System.getProperties().propertyNames();
while (systemKeyEnum.hasMoreElements()) {
String key = systemKeyEnum.nextElement();
String val = System.getProperty(key);
System.out.println(key + ": " + val);
}
看看是否真的有效?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.