私はJava EE 6チュートリアルを進めていますが、私はWebサービスに関するセクションです。私は近い将来、同様のことをする必要があるので、helloserviceを実行しようとしています。ただし、エラーなしでビルドしてデプロイしている間に、GlassFishから404エラーが発生します。私はGlassFishのログを見て、何の問題もないことを発見しました。ここでは、サービスからのコードがあります:私が読んだものに基づいJava EE 6チュートリアル、helloserviceで404エラーが発生する
package helloservice.endpoint;
import javax.jws.WebService;
import javax.jws.WebMethod;
@WebService
public class Hello {
private String message = "Hello, ";
public void Hello() {
}
@WebMethod
public String sayHello(String name) {
return message + name + ".";
}
}
、@WebServiceは、サービス名HelloService(ベース・クラス名+「サービス」)を持つクラスを公開する必要があります。私がに行くときしかし、:
http://localhost:8080/helloservice/HelloService?wsdl
私は404エラーを取得します。以前の例をすべて取り上げたので、GlassFishが稼働しており、導入した他のアプリケーションのためにポート8080で応答していることがわかりました。管理コンソールで、helloserviceがデプロイされ実行されていることがわかります。 "asadmin list-domains"は、私のdomain1(私の唯一のドメイン)が動作していることを示しています。私はおそらく@WebServiceアノテーションのデフォルトが間違っていると思ったので、@WebService(serviceName = "Foobar")を使って明示的な値を設定しましたが、HelloServiceをFoobarに置き換えてwsdlをチェックしようとしたときに違いはありませんでした。
他の人も同じような問題を抱えているのを見たことがありますが、解決策が投稿されていません。誰が何が間違っているか、またはそれを修正する方法を説明することができますか?それは構築し、私はそれを使用しようとすると、エラーなしで展開しながら、
これが問題でした。 Webプロファイルをインストールしました。私は、WebプロファイルがWebサービスをサポートすると仮定したのは、私の悪いことだと思います。明らかに比較表でこれは当てはまりません。どうもありがとうございました! –