問題タブ [apache-mina]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
connection - Apache Mina java.io.IOException:ピアによって接続がリセットされました
MINA 2.0.0 M6を使用していますが、ログファイルには次のような例外がたくさんあります。
私のアプリケーションでは、接続するすべてのクライアントがx分ごとにGPSデータのみを送信するため、MINAからクライアントに何も送信しないでください。サーバーにデータを転送し続けるように1つのデバイスが設定されました。ただし、MINAサーバーがクライアントからランダムにデータを取得できないことがわかりました。同様に、サーバー側は新しい接続用のセッションを作成しますが、何らかの理由でサーバーはデータを取得できず、IOExeceptionをスローし、MINAタイムアウトによって設定された10分後にセッションを閉じます。
デバイスは正常に動作しており、データを送信し続けていると確信しています。サーバーはほとんどの場合データを取得できるため、MINAも問題ないようです。ApacheMinaには接続番号の設定があるのではないかと思います。誰かが私にこの問題を解決するのを手伝ってもらえますか?
ちなみに、LinuxサーバーのTCP接続番号の最大数も確認しています。
************************************************** ***************************
java.io.IOException:sun.nio.ch.FileDispatcher.read0(ネイティブメソッド)のsun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:21)のsun.nio.ch.IOUtilのピアによって接続がリセットされました。 readIntoNativeBuffer(IOUtil.java:202)at sun.nio.ch.IOUtil.read(IOUtil.java:175)at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:243)
apache-camel - Fuse ESB: mina を含むバンドルを ServiceMix にデプロイできない
ヒューズesbでキャメルでApache minaを使用しようとしています。展開の問題に直面しています。
これが私のルートです:
以下は、servicemix コンソールから取得したスタック トレースです。
そして、ここに私のコーデック工場があります:
ここで私が間違っていることについて何か考えはありますか?ご協力いただきありがとうございます
swing - Javaネットワーキングプログラミングに最適なフレームワーク?
私はJavaネットワーキングの初心者で、LANネットワークにダウンロードして5人のユーザーだけが使用したい小さなプロジェクトがあります。
Java swing、データベースには MySQL、IDE には eclipse を使用したいと考えています。ネットワークプログラミングを簡単にするための最良のフレームワークは何ですか?最初から始めたくないからです。
私は Netty と Apache Mina について読みましたが、それが私の場合に適しているかどうかはわかりません。
apache-camel - servicemixのミナルート-コマンドの実行中にエラーが発生しました:java.lang.NullPointerException
minaコンポーネントを使用して非常に単純なラクダのルートを作成しました。このルートは実際にはカスタムコーデックを使用し、osgiバンドルとしてパッケージ化されています。servicemix(apache-servicemix-4.4.1-fuse-03-06)にデプロイするたびに、バンドルはアクティブ状態ではなくインストール済みになります。そしてもちろん、起動しようとすると、コンソールから「コマンドの実行エラー:java.lang.NullPointerException」が表示されますが、ログには何も表示されません...
誰かが私がこの仕事をするのを手伝ってもらえますか私は何が起こっているのか理解できません...これはパッケージングの問題ですか?コーデックの読み込みと関係があると思いますが、今はここで立ち往生しています。
これが私のXMLルートです
これが私のコーデックファクトリです
私のコーデックの実装:
そして私のpom.xml
ご協力いただきありがとうございます。フランソワ
java - Apache Mina - クライアントへの複数の小さな書き込み
apache mina 2.0.4 に基づいて tcp サーバーを構築しましたが、クライアントへの書き込みに問題があります。
一度に 1 つのメッセージしか処理できず、バッファ サイズが最大 256 バイトの TCP クライアントがいくつかあります。2 つ以上のメッセージ (< 256 バイト) をクライアントに送信すると、メッセージは 2 つ以上の分離されたメッセージではなく、クライアントが処理できない 1 つまたは 2 つの大きなブロックで到着します。sessionConfig.setTcpNoDelay(true/false);
と同様に、成功せずに設定しようとしましたsessionConfig.setSendBufferSize( 256 );
。
メッセージ応答エンコーダーで、出力をフラッシュしようとしました:
そして、メッセージの送信を担当するスレッドで、メッセージが書き込まれるのを待ちました
これはすべて惨めに失敗し、機能する唯一の解決策は、セッション書き込み間のばかげた 500 ミリ秒のスリープであり、これはほとんど受け入れられません。私が間違っていることを誰かが見ていますか?
java - Apache MINAを使用してソケットからバイナリデータを読み取る方法は?
サーバーに接続して数バイトを送信した後、サーバーがMP3ストリームを送信することを知っています。Apache MINAで送信を読み取る方法は?例を挙げていただけますか?
java - Apache Mina アイドル モニター
私は Apache Mina を使用して最初の TCP/ソケット ベースのアプリケーションを開発しています。ここでミナについて質問したいだけです。
サーバーは 5 秒のアイドル時間を課すとソケット接続が終了するため、定期的にハートビート (エコー メッセージ / キープアライブ) を送信して接続が有効であることを確認する必要があります。一種のキープアライブ メカニズム。
5 秒ごとにエコー/ハートビート メッセージを盲目的に送信する方法が 1 つあります。私は、ビジネス メッセージを送信していて、アイドル時間、つまり 5 秒に達しない場合、スマート/インテリジェントな方法「アイドル モニター」が必要であると考えています。ハートビート メッセージを発行するべきではありません。接続全体がアイドル状態の場合、ハートビート メッセージが送信されるため、帯域幅を節約し、ソケットでの読み取りと書き込みを高速に行うことができます。
android - Androidでminクライアントを実行(同期)、ClassNotFoundExceptionの解決方法
私は PC に mina(2.0.4) サーバーをセットアップしました。それと通信するために PC に mina クライアントを作成したので、問題なく動作します。次に、Androidに同期Minaクライアントを実装しましたが、クライアントは受信した応答メッセージをデコードできません。
私はJavaとAndroidが初めてで、丸3日間努力しました。誰でも助けてください。よろしくお願いします。
ここに私の部品コードを要約しました:
最初にミナクライアントをセットアップします。
次に、メッセージ機能を送信します。
そして私のデコーダクラス。
応答メッセージ デコーダ。
Android クライアントから mina サーバーに TransRequest(RegisterRequest) を送信し、TransResponse(RegisterResponse) を受信できます。しかし、クライアントは常にそれをデコードできません。エラーは次のとおりです。
メッセージ ヘッダー 12 00 00 2A 00 00 00 D4 12 04 00 02 00 00 00 CC は正しいです (2 メッセージ コード/長さのペア)。
私のメッセージクラス。
mina のソースコードをデバッグしました。例外コード行は IoBuffer:getObject() メソッドにあります。
例外コード行: readClassDescriptor() 関数。
サーバー側のコードと同じパッケージ名で、すべての要求/応答クラスを既に配置しています。送受信は AsyncTask で実行されます。mina のソース コードをパッケージに含めようとしましたが、解決しませんでした。
以下の点を疑いました。
- エンコード時に IoBuffer.putObject を呼び出す Request を送信できます。これにより、Request クラスをロードできます。Response クラスを読み込めません。
- Thread.currentThread().getContextClassLoader() がおかしいようです。libPath が null である PathClassLoader であり、mLibPaths には「/system/lib/」のみが含まれ、パスは「.」であり、.apk ファイルからクラス化してロードできる他のクラス ローダーとは異なります。この ClassLoader では、RegisterResponse クラスをロードできないと思います。それはスレッドの問題ですか? -- nio プロセッサで実行されるデコード手順。
java - Android 2.2 の Apache MINA での NullPointerException
Apache MINA 2.0.4 を使用して Android 用のアプリケーションを開発しています。私がテストしたすべてのバージョンで問題なく動作していますが、HTC Desire では 2.2.2 です。
クライアントはサーバーに接続できますが、サーバーがメッセージを送信すると NullPointerException が発生します。
ObjectSerializationCodecFactory を使用していますが、何が問題なのかわかりません。Android 2.2で「通常の」Javaシリアライゼーションを使用しようとしましたが、うまくいきました。
接続のコードは次のとおりです。
例外は、messageReceived が呼び出される前にハンドラーでキャッチされます。
この例外に関する情報は大歓迎です!
ありがとうございました
java - minaを使用してクライアントからサーバーにPOJOを送信する方法
私はapacheminaを初めて使用し、クライアントからサーバーにPOJOを送信する際に問題が発生します。可能であれば、サンプルコードを提供してください。