問題タブ [java-ee-5]
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.
jpa - ejb3-using-2-persistence-units-within-a-transaction
次の技術スタックを使用して、同じトランザクション内から 2 つの永続ユニットに接続する際に問題があります。
WLS 10.3.x, Eclipselink 2.1, Oracle 11g JDBC driver, Informix 10 JDBC driver
この SO投稿からの入力を使用して、Oracle データソースを XA 準拠にし、Informix ds を「2 フェーズ コミットをエミュレート」すると、動作が開始されました。しかし、今私は奇妙な問題を抱えています。
スタンドアロンの Java クライアントを使用して、JPA エンティティを呼び出す ejb 3 SLSB を呼び出しています。私が直面している問題は、最初は動作し、2 回目は例外をスローしませんが、どちらのデータベースのデータも更新せず、3 回目はアプリケーションが既にコミットされているかのように「トランザクションは既にコミットされています」という例外をスローします。サーバー JTA トランザクション マネージャーは、元のトランザクション コンテキストを保持しています。これらの 3 つの呼び出しは個別かつ順次であり、すべての呼び出しはクライアントがクライアント プロセスを終了することで完了することに注意してください。この問題は非常に一貫しており、アプリ サーバーを再起動するたびにまったく同じ順序で発生します。
ご意見をお待ちしております。
java - Java EE 5 JAX-WS 2.0 Web サービスをパラメータで初期化する方法
アプリケーション構成:
- 注釈付きの JAX-WS 2.0 Web サービスを作成する Java の最初の方法を使用する Web アプリケーション。
- WebLogic 10.3
私の要件
私が持っている要件は、単一の Web サービス実装クラスをデプロイすることですが、サービスへのアクセス元の URL に基づいてロジックを変更することです。
質問: これを行う良い方法は、web.xml にさまざまなマッピングを展開し、さまざまなパラメーターでそれらを初期化することだと思います。より良い方法はありますか?
Web サービスへのアクセス元の URL からロジックをオフにする最善の方法は何ですか? 初期化パラメーターを使用して web.xml で 2 つのサーブレット マッピングを構成する必要がありますか (試してみましたが、機能しませんでした)、サービス実装で URL を解析する必要がありますか? 他の選択肢はありますか?
私が試したこと(しかしうまくいかなかった)
web.xml<init-param>
の要素にを追加しようとしました。<servlet>
ただし、ServletConfig
Web サービス内のオブジェクトにアクセスしてパラメーターを取得することはできません。Web サービスには、標準のすべての機能が備わっているわけではありません(またはServlet
を実装したとしても)。私は(そう思われる)にしかアクセスできず、そこからは要素しか取得できませんが、代わりに要素が必要になります。Servlet
ServletContextListener
WebServiceContext
<context-param>
<init-param>
web.xml では<servlet>
、同じ Java クラスを使用して 2 つの要素を入力しますが、これらは次のように 2 つの異なる URL にマップされます。各サーブレット マッピングで「ソース」パラメータがどのように異なるかに注目してください。
java - java.lang.NoClassDefFoundError:HttpSessionListener
作成しなかった戦争を展開しようとしていますが、ログに次のエラーが表示されます。
HttpSessionListenerがtomcat(私のアプリサーバー)のlibディレクトリにあるservlet-api.jarにあることを知っています。
戦争のWEB-INF/libフォルダーにservlet-api.jarを含めようとしましたが、ログはそれを行うために私に怒鳴りました:
インターネットは、libフォルダにそのクラスを含める必要はないと主張しています。
編集: 問題のあるリスナー(上記の問題を引き起こしていた)をweb.xmlから削除しました。これは、あまり重要に見えなかったためです。これにより、より多くのエラーが明らかになりました。
私は何が欠けていますか?
oracle - Java 6 で使用する Oracle シン ドライバのバージョン
Java 1.5 から Java 6 に、J2EE 1.4 から Java EE 5 にアップグレードしています。Oracle 10g を使用しています。Java EE 5 は JDBC 3.0 のみをサポートしますが、Java 6 は JDBC 4.0 をサポートします。Java 6 を搭載した Java EE 5 サーバーで実行している場合、Java EE 5 Web アプリケーションで JDBC 4.0 API を使用できますか?
どの Oracle Thin Driver を使用すればよいですか? オラクルのダウンロードページojdbc6.jar
からですか?それは Oracle 10g と互換性がありますか?
java - Java EE 5 プログラムによる認証
doGet
JSFアクション(またはサーブレット/doPost
メソッド)からユーザーを認証するにはどうすればよいですか? 私は次のようなことを意味します:
制限:
- このメソッドは、コンテナ管理のセキュリティと互換性がある必要があります。(つまり、`HttpServletRequest.getRemoteUser()` は認証されたユーザーを返す必要があります)
- このメソッドは、どこでも (つまり、各アプリケーション サーバー上で) 機能する必要があります。
j_security_check
または別の J2EE 認証タイプ (BASIC、DIGEST など)を使用しない
可能です?
または、この方法でキャプチャを作成する方法は?
ログインとパスワードが空でないことを検証しますか?
もちろん、JavaScript を使用せずに 1 つのページで...
同様の質問...ただし、この質問に対する回答はありません:
JSFの認証と認可
j_security_checkを使ってJava EE / JSFでユーザー認証を行う
編集 1 :
少なくとも 2.3 のサーブレット API を意味します。はい、サーブレット API 3.0 について読みましlogin
たが、これはアプリケーション サーバーの新しいバージョンでのみサポートされています。
アプリケーションサーバーごとにこの認証を実装するソリューションがここにあると思います。時にはいくつかのハックを介して、時にはこの目的のために設計された特別なクラスを介して。このような:
java - GWT: Java は SDK で完全にサポートされていますか?
Google の GWT (2.1) による Java 1.5 および JEE5 サポートの公式発表を探しています。Java 言語のどの部分が GWT で公式にサポートされているかの仕様を見つけることができませんでした。Googleの声明はありませんか?では、Java 言語のすべての部分がサポートされ、JavaScript で翻訳可能になる可能性はありますか? 想像できませんでした!GWT Web サイトで見つけた唯一のことは、「GWT SDK は Java API とライブラリのコア セットを提供します..」ですが、それ以上の宣言はありません...
「Stackis」の助けを借りて感謝します。私の下手な英語は残念です ;) Lars
java - Javaクラスパス、Unix上のWeblogicで.jar拡張子のないjarファイル
libA.jarというファイルをクラスパスフォルダーに配置し、古いファイルの名前を次のように変更するとします。
libA.jar.old
クラスローダーはクラスをロードしますか?
Solaris8でweblogicを使用しています。
ありがとうございました!
宇土
java - Internet Explorer 6 がランダム GET を送信する
Web アプリケーションには、クリックすると長時間実行されるプロセスを開始するボタンがあります。このプロセスのパラメーターによっては、http 要求が完了するまでに時間がかかる場合があります。30 秒かかる HTTP リクエストもあれば、1 分かかるものもあれば、5 分以上かかるものもあります。
私たちが遭遇している問題は、約 300 秒 (これは私がいくつかのテストを行って得た数値です) 後に、GET 要求が IE6 からブラウザーに送信され、次の URL にアクセスしてセッションを無効にするように指示することです。
現在、原因の可能性について JavaScript コードまたは jsps を調査していますが、現時点ではブラウザの問題である可能性を除外したいと考えています。
セッション/接続タイムアウトに関して IE6 について知っておくべきことはありますか?
少し調査したところ、KeepAliveTimeout が 1 分で、ServerInfoTimeout が 2 分であることがわかりました。約 2 分 10 秒かかる http 要求がありますが、これは IE の 3 分の範囲内です (2 分 ServerInfoTimeout + 1 分 KeepAlivTimeout)。
このタイムアウトに達するとどうなりますか?
java - 長時間実行される同期プロセスの設計を変更するようプロダクト マネージャーを説得する
私たちの Web アプリケーションには、次の機能があります。
- 製品のリストを取得します
- それらをExcelファイルに書き込みます
- ダウンロード用の Excel ファイルをユーザーに返します
このプロセスは、製品の数に応じてより頻繁にかかり、> 2 分かかります。一部のリクエストには 5 分以上かかります。平均して、ユーザーは 100 ~ 500 個の製品をダウンロードし、リクエストには約 1 ~ 5 分かかります。
単一のリクエストで Web サーバースレッドをアクティブにするには、1 分では長すぎると思います。非常に時間がかかるという事実は別として、プロセス自体がサーバーでメモリ不足エラーを引き起こし、サーバーをクラッシュさせます。
これは悪い習慣であり、ソフトウェア アーキテクトが書いた記事や本、研究を引用して、この状況で何をすべきかについての推奨事項とともに、設計を変更する必要があることを彼らに納得させたいと思います。
そのような本/記事/研究を知っている人はいますか?
1 つのリクエストで Web サーバー スレッドをアクティブにするには 1 分間は長すぎるという私の考えに同意できない場合は、その理由を教えてください。
java - EJB と Web 層
私は EJB を学んでおり、そのために EJB 3 Developer Guides という本を購入しました。EJB アーキテクチャーがどのように機能するかについて、ある程度理解できました。この本は、これをうまく説明している。
しかし、本の例はすべて ant タスクを介して実行されます。私は基本的に、EJB がサーブレットや JSP とどのように組み合わせて使用されているかを知りたいと思っていました。JSPページにアクセスするある種のWebクライアントと、EJB Beanのサービスを取得するサーブレット?
Web層でEJBを使用する方法を学習するにはどうすればよいでしょうか? チュートリアルまたはリンクの方がよいでしょうか、それとも他に読める本はありますか?
ありがとう。