2011-10-25 12 views
0

サンプルStockWatcherアプリケーションを作成するために、デフォルトのGWTチュートリアルに従い、Java RPC部分までhttp://code.google.com/webtoolkit/doc/latest/tutorial/RPC.htmlまでです。RPC呼び出しでTomcatで動作するgoogle GWT StockWatcherプログラムを取得する

私はjavaサーブレットのものを含めて、すべてEclipseでローカルに作業しています。戦争/ WEB-INF/web.xmlファイルは次のようになります。

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
       http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
     version="2.5" 
     xmlns="http://java.sun.com/xml/ns/javaee"> 

    <!-- Servlets --> 
    <servlet> 
    <servlet-name>stockPriceServiceImpl</servlet-name> 
    <servlet-class>com.google.gwt.sample.stockwatcher.server.StockPriceServiceImpl</servlet-class> 
    </servlet> 

    <servlet-mapping> 
    <servlet-name>stockPriceServiceImpl</servlet-name> 
    <url-pattern>/stockwatcher/stockPrices</url-pattern> 
    </servlet-mapping> 

    <!-- Default page to serve --> 
    <welcome-file-list> 
    <welcome-file>StockWatcher.html</welcome-file> 
    </welcome-file-list> 

</web-app> 

私はwarファイルにこのすべてを置く方法を知っているが、それはそれは作成しなかった、インターネット上でこのANTスクリプトが見つかりませんでした。戦争ファイル。私はTomcatにアプリケーションをアップロードする場合

<project name="StockWatcher" basedir="." default="default"> 

    <target name="default" depends="buildwar,deploy"></target> 

    <target name="buildwar"> 
     <war basedir="war" destfile="StockWatcher.war" webxml="war/WEB-INF/web.xml"> 
      <exclude name="WEB-INF/**" /> 
      <webinf dir="war/WEB-INF/"> 
       <include name="**/*.jar" /> 
      </webinf> 
     </war> 
    </target> 

    <target name="deploy"> 
     <copy file="StockWatcher.war" todir="." /> 
    </target> 

</project> 

、正常に動作しているjavascriptのものクライアント側は、しかし、RPCサーブレットが動作していない、私は次のエラーを取得しています。

HTTPステータス404 - サーブレットstockPriceServiceImplは、私はこれをどのように修正すればよい

利用できないのですか?

答えて

0

クラスはWEB-INF/classesでコンパイルされ、JARにパッケージ化されていない可能性がありますので、<include name="**/*.jar" />はクラスを除外しています。私はあなたのWARを構築するための良い方法を(もしあれば)提供するのに十分なAntを知っていませんが、既存のものの隣に<include name="**/*.class" />を追加してクラスを拾い上げてみてください。

関連する問題