2012-05-11 10 views
3

JsoupをクライアントサイドのGWTを持つ外部JARとして使いたい。 しかし、Jsoupの.jarはGWTのために作られていません。 (no。gwt.xml)。JSoup with GWT(互換性のあるJARを作成する)

Javaファイルをモジュールとして使用し、GWTで継承できるようにするには、クラスファイルと.gwt.xmlファイルを一緒にパッケージ化する必要があります。

しかし、私はどのように行うのか分かりません。

リンク: Jsoup - http://jsoup.org/

おかげ

EDIT:私のアプリケーションはクライアント側のみを持っています。サーバー側はありません。

答えて

0

javaデコンパイラを使用して、javaクラスを抽出してsrcフォルダに追加することができます。または、ソースをダウンロードしてプロジェクトに添付することもできます。うまくいくはずです。あなたはクライアントパッケージにクラスを移動する必要があり、このようなエラーを回避するために

UPD

  1. でも、それらのクラスは動作しません。このライブラリはGWTマッピング(java-> js)に存在しないJavaクラスを使用するためです。したがって、あなた自身が競合する輸入品を書き直そうとするのが最善の方法です。

UPD2

私はそこだけで4競合を見ることができるように。それは簡単でなければならない。

+0

コンパイル中にエラーが発生しました: _com.google.gwt.dev.jjs.InternalCompilerException:JNodeを取得できません .... [未解決] publicボイドタイトル(java.lang.Stringで) [未解決]パブリック未解決タイプorg.jsoup.nodes.ElementのcreateElement(java.lang.Stringで) [未解決]パブリックorg.jsoup.nodes.Documentの正規化()_ そして、他の多くの[未解決]。 私はクラスだけをコピーしますか? .gwt.xmlに追加するものは何もありません。 – Toph

+0

4つの競合だけでなく、私はそれらすべてを書くことができませんでした。 (このコメントボックスに十分なスペースがない)。 クラスをクライアントパッケージに移動しました。 2番目の部分(読み込みの書き換え)はわかりません。私はクラスでこのようなものを持っています: 'package com.domain.appgwt.client.jsoup.nodes; インポートcom.domain.appgwt.jsoup.helper.Validate; ' 誤差は次のようになり: [ERROR]ライン64:メソッドの形式(文字列、文字列)String型 ため未定義です[ ERROR] 181行目:Object型のclone()メソッドが定義されていません 助けてくれてありがとう – Toph

+0

GWTではすべての標準Javaメソッドが存在するわけではありません。たとえば、java.net.URLが見つからない場合、String.formatは実装されていません。それぞれのケースを見つけ(ちょうどgoogle - たくさんの例)、衝突する行の代わりに 'gwt互換の'コードを書いてください。 –

0

おそらくあなたはそれを行うことはできません。 可能なアプローチは、サーバー側でJSoupを使用し、クライアントからRPC呼び出しを行い、目的のデータを取得することです。

+0

こんにちは、私は実際にサーバー側を持っていません。私が解析したいデータは文字列からです – Toph

関連する問題