2016-09-07 4 views
3

にアップデートした後、私は私がsrc/main/java/com/foo/bar/AppWidgetSet.gwt.xmlVaadinのwidgetsetパスは私のVaadinアプリケーションでは7.7.0

で私AppWidgetSet.gwt.xmlファイルを置いていた、web.xml

<init-param> 
     <param-name>widgetset</param-name> 
     <param-value>com.foo.bar.AppWidgetSet</param-value> 
    </init-param> 

で以下のように指定された自分のウィジェットセットを持っており、変更されますこのセットアップはvaadin 7.7.0(7.6.8から)にアップグレードするまで正常に機能しました。アップグレード後、ブラウザからアプリにアクセスしようとするとエラーが発生しました。

INFO: Requested resource [/VAADIN/widgetsets/AppWidgetset/AppWidgetset.nocache.js] not found from filesystem or through class loader. Add widgetset and/or theme JAR to your classpath or add files to WebContent/VAADIN folder. 

vaadinはウィジェットセットのために別の場所を探しているように思えるので、私はアプリをクラスパス(src/main/java/AppWidgetSet.gwt.xml)のルートに私のAppWidgetSet.gwt.xmlを配置し、再構築されました。

それから、もう一度作業しました。

ウィジェットセットを使用できなくなったinitパラメータとして指定していますか?ウィジェットセットXMLをクラスパス自体のルートに配置する必要がありますか?

答えて

0

私のVaadinアプリケーションを7.6.8から7.7.2にアップグレードした後も同様の問題があります。

以下

は7.7.7にバージョン7.6.8、更新前のPOMた状態だった:私は、パッケージが/メインのsrc /の下のリソースを再帰的に乗算し始めたことに気付きました

  • のsrc /メイン/リソース
  • mypackageと
  • MyAppWidgetset.gwt.xml "mypackageと" の下で、7.7.7にPOMを更新した後

はxmlファイルと新しい "mypackageとの" 登場しました!ちょうど毎回の再構築後にそれらのフォルダが常に作成されて作成されることを強調するために、4番目のビルド後に10個以上のサブフォルダがあります。

  • のsrc /メイン/リソース
  • .... mypackageと
  • ........ mypackageと
  • .............. .. MyAppWidgetset.gwt.xml
  • ................................ mypackageと
  • ................................................ MyAppWidgetset.gwt.xml
  • ...
  • MyAppWidgetset.gwt.xml
0

カスタムウィジェットセットに関して7.7.2にバグがあるかのように思えます。まず、本当に必要かどうかを確認します。クライアントサイドのカスタムウィジェットを使用しない場合は、ウィジェットセットの注釈や関連するweb.xmlのパラメータを忘れて、Vaadinに新しいデフォルトのAppWidgetsetを使用させてください。そうでない場合は、リファクタリングとカスタムクライアントのものを別々のプロジェクトに変換し、ローカルのMavenリポジトリにインストールしてから依存関係を使用して、メインプロジェクトのパスのどこにでも独自のgwt.xmlを入れないでください。最後に、上記のいずれも使用できない場合(私の場合も同様)、7.7.3のバグ修正を待ちます。

参照:https://dev.vaadin.com/ticket/20320

私が気づいたように、新しい7.7.2プラグインは(すなわち/ VAADIN/widgetsetsの)ソースに何かを置くが、出力アーティファクトと戦争のアーカイブに直接JSをコンパイルした店舗はありません。ですから、@Lahiru Chandimaの回避策は、新しい、禁欲的な7.7.2プラグインに完全に依存せず、や<hostedWebapp>のような古い要素を使用して、${basedir}/src...の場所を挙げることができます。

@dobrivoje私は必要に応じてコンパイルすることをお勧めします。その後、驚くほどに作成された不要な(ネストされた)パッケージとxmlファイルを削除し、クライアントのコンパイルを忘れてしまいます(すべてのビルドで本当に必要ですか? :

<!-- goal>update-widgetset</goal> 
<goal>compile</goal --> 
関連する問題