2011-07-25 7 views
2

私は自分のサーバー(Glassfish v3.1オープンソース版)にajaxリクエストをしようとしています。何らかの理由でリクエストがサーバーに行かず、tomcatで同じproyectを実行しています7それは正しく動作します、私はglassfichや何かに行う必要がある任意の設定がありますか?との完全なJava EE実装船であるとしてHELIOS、JSF 2つのMyFaces 2.1.1、RichFacesの4.0.0、とGlassFish 3.1のオープンソース版GlassFishをajaxリクエストに対応させる2

はここに私のコード

<h:panelGroup> 
    <h:inputText id="firstName" 
     value="#{RegistrationForm.first_name}" 
     required="true" 
     requiredMessage="Please enter your first name"> 
     <f:converter converterId="bankingCore.UpperCaseConventer for="firstName"/> 
     <f:ajax event="blur" execute="@all" render="@form"/> 
    </h:inputText> 
    <h:message id="NameError" for="firstName" styleClass="errorClass"/> 
</h:panelGroup>    

+0

:それはTomcatのでとGlassFishで動作する場合は、「要求がサーバーに行くことはありません」、これは次の行を含むように、Webアプリケーションで/META-INF/sun-web.xmlファイルを編集します。要求はクライアントによって発行されているので、できません(私はあなたが変更しなかったと思います)。そのため、リクエストはTomcat *と* GFのどちらかで発行されなければなりません(FirebugやChromeの開発ツールで確認できます)。クライアントとサーバーのログで確認してください。 –

答えて

2

Glassfishのだ日食使用して

イムJSF実装(Mojarra)は既にバンドルされています。 Glassfishはwebappの前に自動読み込みを行います。しかし、Webアプリケーションに別のJSF実装(MyFaces)をバンドルすると、衝突することになります。 Tomcatは単純なJSP/Servletコンテナであり、JSFがバンドルされていないので、衝突することはありません(webappに異なる実装/バージョンのJSP/Servletライブラリをドロップするまで)。

  1. があなたのWebアプリケーションでのMyFacesライブラリを取り除く:

    あなたは、2つのオプションがあります。あなたのwebappはTomcatの共有クラスパスをJSFライブラリをインクルードするように変更することなく、Tomcat上でのみ動作します。

  2. GlassFishにバンドルされたJSF実装をロードせず、代わりにwebappにバンドルされたJSFを使用するように指示します。あなたの問題の説明に何か問題があり

    <class-loader delegate="false" /> 
    <property name="useBundledJsf" value="true" /> 
    
関連する問題