0

私は IBM Worklight を初めて使用し、アダプターの使用を開始しました。Eclipse IDE からアプリケーションを実行できますが、デバイス (iPAD/タブレット) で同じアプリを実行するには助けが必要です。

単純な html とボタンの onclick を使用してワークライト プロジェクトを作成しました。これは、単純に Java クラスを呼び出して文字列を返す Http アダプターと呼ばれます。Adapter とモバイル アプリを Eclipse にデプロイしました。を押すhttp://localhost:8080/consoleと、アダプタとモバイル アプリケーションが表示されます。モバイルアプリのボタンをクリックすると、アダプターから値が取得され、正常に機能します。

アプリケーションを xcode プロジェクトとして変換し、モバイル アプリケーションを識別して iPAD にインストールする iPAD を接続しました。モバイル アプリケーションにあるボタンをクリックすると、アダプタからの値が表示されません。

アダプターを構成する方法と場所は? アダプタがインストールされているモバイル アプリケーションを指定する場所はどこですか? 私を助けてください

4

4 に答える 4

2

問題はアプリケーション記述子にあります。デバイスから、localhost を介して Worklight サーバーにアクセスすることはできません。application-descriptor.xml に有効な URL を指定する必要があります ( http://<YOUR WROKLIGHT SERVER IP>:<PORT, USUALLY 8080>)。

于 2013-02-10T10:43:28.787 に答える
1

アダプターを構成する方法と場所は? アダプタがインストールされているモバイル アプリケーションを指定する場所はどこですか? 私を助けてください

簡単な説明として:

アダプター自体はサーバー側の要素です。アプリ自体に (デプロイ時に) アダプターへの接続を構成するように指示することはありません。ただし、Worklight サーバーへの接続を構成します。Ravidor が言ったように、Worklight Server を調整する必要があるかもしれません。

テストでは、localhost:8080 は同じテスト マシンで正常に動作しますが、モバイル デバイスでは localhost は外部のものではなくモバイル デバイスを指しているため、実際にはそれ自体でサーバーを探しています。

アプリケーション記述子をサーバーの IP (またはテスト用のコンピューターの実際の IP アドレス) になるように調整します。

次に、invokeProcedure メソッドで実行される HTTP 要求は、アプリケーション記述子にあるサーバー アドレスを使用して、問題のアダプターをホストする Worklight Server を呼び出します。

簡単な例:

私のテスト用コンピューター/サーバーの IP は 192.168.1.5 です。localhost を示す URL 部分を 192.168.1.5 に変更します (ポートは 8080 のままです)。そこから、アプリを再構築してデプロイします。エミュレーター、デスクトップ ブラウザー、またはネットワークに接続された実際のハードウェア デバイス (iPad など) を使用すると、jetty サーバーをホストする特定のマシンとポートに接続されます。

Apple デバイスでは、iPad の設定 -> (アプリ名) で設定をオーバーライドできます。新しいサーバーの場所を手動で入力する場所があるはずです。

うまくいけば、少しは解決します。

于 2013-03-15T17:36:55.357 に答える
0

アプリケーションがコンソールで動作する場合は?もしそうなら、それはデバイス上で動作するはずです。Worklightアプリケーションはアダプターを使用してWLサーバーにアクセスするため、デバイスのWi-FiまたはGPRSを確認してください。したがって、適切なインターネット接続が必要です。エラーを確認するためにログを見逃す可能性があることを提供してください

于 2013-01-22T13:43:12.330 に答える
0

1 つの小さな正解: アプリケーションがデスクトップ ブラウザーで動作する場合でも、iPad で動作することを保証するものではありません。

通常、デスクトップ ブラウザは、テスト時に Web サーバーを実行するマシンと同じマシンです。したがって、ほとんどの場合、デフォルトのホスト名は「localhost」になります。

worklight.properties および application-descriptor.xml で「localhost」を使用することを避け、IP アドレスを使用することをお勧めします。さらに、その IP アドレスはモバイル デバイスから (ping 経由で) アクセスできる必要があります。ファイアウォール/ルーターはそのようなアクセスをブロックする可能性があるため、事前にそれらを正しく構成してください! iPad でアプリを実行します。

于 2013-03-14T13:35:34.517 に答える