問題タブ [atg]
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.
java - ATG でリポジトリ アイテムをモックする方法
ドロップレットのモック クラスを作成しようとしています。リポジトリ呼び出しをモックすることはできますが、req.getParameter
リポジトリからリポジトリ アイテム リストをモックする方法について助けが必要です。以下はサンプルコードです。
jboss - コンポーネント /atg/dynamo/servlet/adminpipeline/AdminHandler が見つかりません
私はこの問題に2週間苦しんでいますが、まだ解決策を見つけることができていないので、誰かが助けてくれることを願っています.
Red Hat Linux マシンに JBoss AP サーバーをインストールしました。コードに新しい変更を加えた後、ビルドをトリガーしてアプリケーションをデプロイしようとしています。デプロイ プロセス中に、サーバーが停止して再起動した直後に、次のエラーが発生し、ビルド/デプロイが失敗します。
ATG のインストールに関するドキュメントを何度か読み、そこで提案されていることを試しましたが、うまくいきません。検索中に、欠落している AdminHandler コンポーネントが、ATG プラットフォームのインストール時に含まれるコンポーネントであることがわかりました。
以前はこのような問題はありませんでしたが、2 週間前のある日、この問題が発生し始めました。
何かご意見は?
ありがとうございました !
mockito - ATG RqlStatement をモックする方法
ATG ドロップレット内で、リポジトリからレコードを取得しています。今、モックしようとするとRQLStatement
、org.mockito.exceptions.misusing.MissingMethodInvocationException
以下は、私が嘲笑しようとしているステートメントです。
私はmockitoとpowermockitoを使用しましたが、うまくいきません
mockito - ArgumentCaptor を使用して Mockito のログ メッセージを確認できますか
次のハンドルメソッドを持つATGにフォームハンドラーがあります-
フォーム ハンドラーは、そのスーパー クラスGenericServiceの 1 つからのログを使用しています。cardService が null かどうかを確認するテストを書きたいと思います。上記のコードでは、カード サービスが null の場合、logError を使用してエラー メッセージを書き込みます。ここで ArgumentCaptor を使用してメッセージを確認できますか。または、このシナリオをテストする他の方法はありますか?
ここで、嘲笑とスパイはどのように連携するのでしょうか? カードオブジェクトを取得するための呼び出しを次のようにスタブする必要があります-
これは私のテスト方法です -
ありがとう。
e-commerce - アセンブルまたはビルドせずに新しい jar を ATG ear に追加する方法
EAR をアセンブルまたはビルドせずに、jar を ATG Ear ファイルに追加するのに役立つ必要があります。
oracle - エラー [nucleusNamespace.] コンポーネント '' をグローバル スコープで解決する試みは無効です。スコーププロトタイプで定義されています
GenericService.resolveName(java.lang.String pName)
The similer error for session scope も
使用しようとすると、上記のエラーが 発生します。スコープを「グローバル」に変更すると、期待どおりに動作します。しかし、コンポーネントをプロトタイプ スコープにする必要があります。それで、なにかお手伝いできますか..?
scope - ATG の $scope=global とはどういう意味ですか?
ドキュメントによると、
グローバル: コンポーネントはすべてのユーザー間で共有されます。セッション:コンポーネントの個別のインスタンスが各ユーザーに提供されます。
つまり、グローバル コンポーネントの場合、核システム全体に対してインスタンスが 1 つしかないということですか? これが正しい場合、'/atg/dynamo/transaction/TransactionManager' やほとんどのドロップレットなどのコンポーネントに対してどのように有効になりますか? これらのコンポーネントは同時に複数のユーザーによって使用されるため
編集:
「TransactionManager」の動作を理解しました。定義によれば、単一のトランザクション マネージャーが必要であり、各トランザクションごとにトランザクション オブジェクトを保持する必要があります。しかし、私の質問は、foreach、switch などのドロップレットに対しても有効です (それらのほとんどはグローバル スコープです)。核システム全体に対応するクラスのインスタンスが 1 つしかない場合、パフォーマンスに悪影響を及ぼしていませんか?