問題タブ [pyro]

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.

0 投票する
0 に答える
2412 参照

python - Ubuntu の Pyro4 Python アプリケーションで「socket.error: [Errno 101] Network is unreachable」

Python2.7 で Pyro4 を使用して単純なアプリケーションを実行しようとしています。2 つのプログラムがあります。1 つ目は、オブジェクトをその IP アドレスにバインドし、ネーム サービスも実行する server.py です。2 つ目は、同じネットワーク内のリモート PC で実行される client.py です。以下のコードは次のとおりです。

次のコマンドでネームサービスを開始しています。

コマンドを使用してIPアドレスを確認しましたifconfig

サーバー.py

client.py

ネーミングサーバーは問題なく起動するのですが、server.pyを実行するとタイトルの通りエラーが表示されます。

同じアプリケーションを Windows 環境でテストしたところ、エラーは発生しませんでしたが、Ubuntu 13.04 ではエラーが表示されました。

0 投票する
1 に答える
661 参照

json - Python 3 での JSON を使用したカスタム クラスのシリアル化

JSON が dict でエンコードされたクラス情報を使用してシリアル化されたカスタム クラスをデコードしようとすると、問題が発生します。出来るだけ詳しくお伝えしたいと思いますので、長文になりますがご容赦ください。

ここで提供されている優れたチュートリアルを参照として使用しています。独自のクラスのエンコード/デコードの記述について詳しく説明しているセクションを参照しています。

私のパッケージモジュール構造は部分的に次のとおりです。

これらのモジュールにはそれぞれ独自のクラスがあります。common.serviceモジュールでServiceクラスのオブジェクトをシリアライズしています。これは基本的に Pyro 接続で使用します。

シリアル化コードは次のとおりです。

逆シリアル化コードは次のとおりです。

デシリアライズ中に問題が発生しています。ローカル変数の値は次のとおりです。

これが失敗する理由は、class _ がそのモジュール内のクラス名ではなく package.module 値を返すためです。技術的には、class _ は実際のクラスであるcommon.service.Serviceを保持する必要があります。このため、最後のステートメントinst = class (**args)_ は「TypeError: module object not callable」エラーで失敗しています。

importまたは importlib.import_module の両方がその最上位モジュールをインポートすることは知っていますが、私の場合、第 2 レベル モジュール内のクラスにアクセスするにはどうすればよいですか? 技術的には、2 番目のレベルがモジュールで、1 番目のレベルがパッケージであるため、取得できない pkg.module 内のクラスが必要です。

質問が理にかなっており、十分な調査が示されていることを願っています。明確にする必要がある場合は、より多くの情報があります。

編集: ユーザーの提案で解決された問題。

0 投票する
1 に答える
512 参照

msbuild - パッチの Windows インストーラ XML 相対パス

Microsoft Team Foundation Server を使用して、アプリケーションのセットアップを管理および展開しています。私のセットアップは、相対パスを持つ WiX セットアップです。

pe コンポーネント

変数.wxi:

<Include>

<?define SourceFiles = "..\OutputFiles"?>

</Include>

セットアップは正しく構築されています。問題: Torch と Pyro を使用してアプリケーションのパッチを生成しています。操作されたビルド イベントと追加のリンカー情報を含む純粋な Wix パッチ プロジェクトを使用しています

(ビルド前 - Torch) (ビルド後 - Pyro) (リンカー追加パラメーター - wixmsp として出力)

パッチをビルドすると、579Failures が発生します。(1x)

エラー 776 コマンド ""C:\Program Files (x86)\WiX Toolset v3.8\bin\pyro.exe" Patch.wixmsp -out Patch.msp -t AnwendungBaseline diff.wixmst" はコード 103 で終了しました
。C:\ Program Files (x86)\MSBuild\Microsoft\WiX\v3.x\wix2010.targets

と (578x)

エラー 322 ファイル '..\SourceFiles\Anwendung.exe' が見つかりません。C:\Patch\Client\Upgrade\Setup\ComponentMain.wxs

ソースセットアップからのパスが正しく解決されていないと確信しています。誰でも私を助けることができますか?ロブ・アーンソン、ロブ・メンシング、ヒース・スチュワード? お願いします :)

0 投票する
1 に答える
648 参照

python - Pyro: コールバックを実行できません

Pyro4 を使用して、サーバーからクライアントへのコールバックをうまく実行できませんでした。

サーバー スクリプトは次のようになります。

クライアントは次のようになります。

コマンド robotController.doCallback(callback) を実行すると、サーバーでメソッド doCallback が実行されますが、サーバーはクライアントにアクセスできません。以下を返します。

エラーの原因とその修正方法を知っている人はいますか? ありがとうございました!

0 投票する
1 に答える
250 参照

python - PyRO: daemon.connect(Pyr​​oObj, name) --> 動作しません

PyRO で問題が発生しています。pyro -ns (ネーム サーバー) が実行されているため、おかしくなりました。したがって、エラーの下にあるここを参照してください。

そして今、コード..それは非常に単純です.

0 投票する
1 に答える
1546 参照

windows - wix patch PYRO0103 : システムがファイルを見つけられません

アプリケーションのパッチを作成しようとしました。2 つのファイルを置き換える必要があります。ブートストラップを使用するとファイルが配置されますが、ブートストラップをアンインストールすると、ファイルがなくなり、古いファイルに置き換えられませんでした(もちろん)。Keypath=yes" をアプリケーション パッケージ (古いパッケージと新しいパッケージの両方) に追加して、問題が解決されることを期待しましたが、いいえ。

私はこのチュートリアルに従っています: http://wix.tramontana.co.hu/tutorial/upgrades-and-modularization/patchwork

コマンドラインからこれを実行したときに発生する問題は次のとおりです。

結果は次のとおりです。

興味深いのは、私の patch.wxs に画像が含まれていないことです。

私に何ができる?

グーグルでこれを見つけました:http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/error-PYRO0103-The-system-cannot-find-the-file-UI-Icons-appicon- ico-if-appicon-ico-is-in-my-latest-wb-td4600799.html

そして、この文が役立つかもしれませんが、私はそれを理解していないし、グーグルは私に良い例を与えませんでした:

「.msi ファイルの拡張子を .wixout に変更し、次の 2 つの引数を light に追加して、元のコマンドラインを light.exe に変更します: -xo -b」

よろしく、 アンドレアス

0 投票する
1 に答える
526 参照

python - jython 2.7b2 をインタープリターとして virtualenv を作成できない

Python から Java コードを実行したいので、標準の Python インタープリターである jython をインストールし、pyro4 を使用してそれらを結合することにしました。Pyro4 には python > 2.5 が必要なので、jython 2.7b を使用することにしました。これを実現するために私が行った手順は次のとおりです。

そして、これは私が得ているものです:

jython 2.7b2 の準備がまだ整っていないということですか、それとも何か間違ったことをしているということですか?

0 投票する
2 に答える
2843 参照

python - クライアントの要求によって Pyro Daemon をきれいに終了するにはどうすればよいですか?

Pyro を使用してスレーブ マシンを制御しようとしています。必要な python ファイルを rsync し、Pyro サーバーを起動し、リモート コントロールでいくつかのアクションを実行してから、Pyro サーバーにシャットダウンするように指示します。

Prio Daemon を正常にシャットダウンできません。呼び出しでハングするか、Daemon.close()その行をコメントアウトすると、ソケットを正しくシャットダウンせずに終了しsocket.error: [Errno 98] Address already in use、サーバーを再起動するのが早すぎます。

SO_REUSEADDR が適切な修正であるとは考えていません。ソケットが正しくシャットダウンされていないと、ソケットが TIME_WAIT 状態のままになり、一部のクライアントで問題が発生する可能性があるからです。より良い解決策は、Pyro Daemon にソケットを適切に閉じるよう説得することだと思います。

デーモン自体から Daemon.shutdown() を呼び出すのは不適切ですか?

サーバーを起動し、クライアントが接続されていない状態で CTRL-C を押しても、問題はありません (Address already in useエラーは発生しません)。これにより、ほとんどの場合、クリーンなシャットダウンが可能に見えます (それ以外の場合は正常なクライアントとサーバーを想定しています)。

例:server.py

例:client.py

0 投票する
1 に答える
77 参照

pyro - WAN 経由の Pyro 呼び出し

世界中のユーザーがアクセスする必要がある Pyro4 アプリケーションがあります。米国内のユーザーは問題なくアクセスできます。ただし、ロンドンの PC からのユーザーは、サーバーへの接続に問題があるようです。彼はネームサーバーに正しく ping を実行できますが、プロキシで実際の呼び出しを実行すると、Pyro CommunicationError ([Errno 11004] getaddrinfo failed) が発生します。

誰もこの問題を見たことがありますか?

0 投票する
0 に答える
121 参照

php - コントローラーから PYROCMS 呼び出しプラグイン?

これは私のプラグイン機能です。

この関数をControllerファイルで使いたいです。

コントローラーでプラグイン関数を呼び出すにはどうすればよいですか。

ありがとうございました。