Adam Bien'sブログで記事を読んでいるときにEJB 3.1を使用しているときに、Javaの新しい機能がわかりました。EJB 3.1をREST Webサービスとして公開するにはどうすればよいですか?
ステートレスとシングルトンのBeanは、ルートリソースとして公開することができます。しかしどうですか? は、私は、このようにそれを実行しようとしました:
@Stateless
@LocalBean
@Path("Hybrid")
public class RESTEJBSample {
@GET
@Path("/demo")
@Produces(MediaType.TEXT_PLAIN)
public String something() {
return "I am a Hybrid!!!";
}
}
私はURL http://localhost:8080/HybridSample/resources/Hybrid/demoを呼び出すと、私は404エラーを取得します。
JAXRSが自分のプロジェクトで動作していることを確認するために、うまく動作するかどうかをテストするために単純なpojoリソースを作成しました。
ここで私はURL http://localhost:8080/HybridSample/resources/genericresource/samplemethodを呼び出すと問題なく動作します。
だから私の質問は以下のとおりです。
それは、このようなGenericResourceがやっているクラスなどのWebサービス・リソースとして働くことができるように、私のEJBに欠けているもの?
追加の設定が必要ですか?
EJBをWebサービスとして使用する場合の制限は何ですか?
グッド私は最初のものを知らなかった:) web.xmlのオプションは、すでにそのようにも私のfavoutity、現在、私のweb.xml looklです。 また、Netbeans IDEの 'New-> Webservice'を使い、ウィザードの後にステートレスBeanとしてWebサービスを作成するというオプションをチェックします。挿入されたEJBは.warファイルに追加され、今はうまく動作します。私の例はうまくいきますが、シーンの背景に何が起こっているのかを知ることにも興味があります。どのファイルがNet Beansによって編集されていますか?また、この豆の限界は何ですか? これは本当にクールな機能だと思います。 – sfrj
NetBeansは何も追加していません。唯一必要なことは、Statelessクラス(例ではRESTEJBSample)とweb.xmlのサーブレットアダプタを作成することです。サーブレットは背後にあるすべての魔法を実行しています。限界については、少し質問を明確にしようとするべきだと思います。 – perissf
私が言いたいのは、私が意味する限界です。このBeanは、EJBモジュールにデプロイされたときと同じように動作しますか?つまり、何らかの手動トランザクション管理が必要なのでしょうか?JMSと対話できますか...今はEJBコンテナにはなく、.warファイルに入っています。 – sfrj