私は単純な "HelloWorld" Webサービスをjubossの下でubuntuの配下に配備しています。 シンプルなクライアントを作成しましたが、動作させることができません。私はクライアントを実行するたびにNullPointerExceptionを取得しています。JAVA JAX-WS javax.xml.ws.Service.getPort(Service.java:188)のNullPointerException
私はOracle Java 7のUbuntuで動作しています。ここ
コードは次のとおり HelloWorldClient.java
import java.net.MalformedURLException;
import java.net.URL;
import javax.xml.namespace.QName;
import javax.xml.ws.Service;
public class HelloWorldClient {
public static void main(String[] args){
URL url;
try {
url = new URL("http://localhost:8080/WebServiceProject/helloWorld?wsdl");
QName qname = new QName("http:///", "HelloWorldImplService");
Service service = Service.create(url, qname);
HelloWorld hello = service.getPort(HelloWorld.class);
System.out.println(hello.sayHello("mkyong"));
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
HelloWorld.java
import javax.jws.WebMethod;
import javax.jws.WebService;
@WebService
public interface HelloWorld {
@WebMethod
public String sayHello(String name);
}
スタックトレース:
Exception in thread "main" java.lang.NullPointerException
at com.sun.xml.internal.ws.model.RuntimeModeler.getPortTypeName(RuntimeModeler.java:1407)
at com.sun.xml.internal.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:334)
at com.sun.xml.internal.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:354)
at javax.xml.ws.Service.getPort(Service.java:188)
at HelloWorldClient.main(HelloWorldClient.java:18)
excepti上は、このラインでスローされます。
HelloWorld hello = service.getPort(HelloWorld.class);
あなたの問題には全く関係ないかもしれませんが、 'QName'には余分な'/'があります。それはタイプミスですか? –
@SamRadが適切かもしれません。 'service'がnullになる理由を説明します – kolossus
余分な"/"はありません。あなたは "http:// something /"のようなURLを書きます。この場合、「何か」はありません。また、サービスはnullではありません。 stacktraceを見てください – Bladositto