問題タブ [jakarta-ee]
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 - Netbeans のパフォーマンスを向上させるには?
Netbeans をロードしてより速く動作させる本当の方法はありますか?
遅すぎて、しばらくコーディングしていると悪化します。それは私のRAMをすべて食べます。
私は Windows マシン、具体的には Windows Server 2008 Datacenter Edition x64、4Gb の RAM、3Ghz Core 2 Duo プロセッサなどを使用しています。x64 JDK を使用しています。NOD32 Antivirus を使用しています。マシンのパフォーマンスが最高だからです。
タスク マネージャーでは、netbeans.exe は 20 Mb 以下しか表示されず、java.exe は 600Mb 以上しか表示されません。
私のプロジェクトは J2EE Web アプリケーションで、500 以上のクラスがあり、プロジェクト ライブラリのみが含まれていません (外部)。遅いと言ったのは、3、4、5 分、またはそれ以上 Netbeans がフリーズしていることを意味します。
エラー警告、svn ステータスなどのファイルの状態を取得するためにすべてのファイルを読み取る必要がある場合、私のプロジェクトは Netbeans には大きすぎますか? これをすべて無効にすることはできますか? ファイルを開いたときだけスキャンするように設定することはできますか?
私の CPU 使用率は通常、すべてのツールを開いた状態で 30% です。つまり、Netbeans、MS SQL Manager、メモ帳、XMLSpy、Task Manager、Delphi、VirtualBox です。Netbeans は、私の仮想化システムよりも多くの RAM を消費します。
Linux では、同じマシン (Ubuntu 8.04 x64) の Windows と同じくらい遅いです。
Netbeans チームが起動速度を改善したのは事実ですが、開くとすべてをキャッシュし始めます。
いくつかの JVM パラメータを使用して、高いメモリ使用量などを設定しました。
"C:\Program Files\NetBeans Dev\bin\netbeans.exe" -J-Xms32m -J-Xmx512m -J-Xverify:none -J-XX:+CMSClassUnloadingEnabled
しかし、それはまだ遅いです。
java - JSP ページで request.setAttribute を使用する
request.setAttribute
JSP ページで使用してから、HTML サブミットで同じ request 属性を取得することは可能Servlet
ですか?
oracle - Oracle は WebLogic を優先して 10gAS を廃止しますか?
Oracle は BEA とその WebLogic ツール スイートを購入しました。自社の 10gAS Application Server にはまだ競合製品があります。どちらもJava EE、エンタープライズ グレードのサーバーです。メンテナンス契約などで時間はかかりますが、同じ建築空間で2つの製品を作り続けるというのは異例のことでしょう。そう...
- 以前のアプリケーション サーバーを廃止して、WebLogic に移行する予定はありますか?
- 廃止されるのは WebLogic ですか?
- これはどのくらいのプロセスになる可能性がありますか? 年?
PeopleSoft と Oracle アプリケーションの違いは? おそらく同じパターンが続きます。
java - サーブレットのマッピングについて説明できる人はいますか?
SpringMVC を使用して Web アプリケーションを作成しようとしています。通常は、作成したファイル拡張子を Spring のフロント コントローラーにマッピングするだけで、うまくいきますが、今回は、ファイル名拡張子のない REST のような URL を使用します。
コンテキスト パスの下にあるすべてのものをフロント コントローラー (" app "と呼びましょう) にマッピングするということは、静的ファイルも処理する必要があることを意味します。サーブレット (「 tomcat 」と呼びましょう) が進むべき道のようです。
私は次のようなことをする仕事を得ました
静的コンテンツのファイル拡張子ごとに後者を繰り返します。上記の設定と同等の次の設定が機能しないのはなぜだろうと思っています。
誰でも光を当てることができますか?
jsp - ユーザーに表示される前に、JSP ページから最終的な HTML 出力をキャプチャする方法は?
最終的にユーザーに出力する前に、HTML をキャプチャし、HTML データに対して後処理を行う必要があります。最終的な HTML ドキュメントは、実際には多くの JSP インクルード (12 程度) で構成されているため、実際には JSP にいくつかの既存のロジックがあります。しかし、生成された HTML が必要です。これはサーバー側で行う必要があります。
私は2つのオプションしか考えていません。
JSP タグ ライブラリを使用し、ボディ キャプチャなどで出力をキャプチャします。しかし、JSP は非常に多くのコードで混乱しているので、理想的には JSP ページを変更しないように努めていました。
URL/Net ライブラリを使用し、http 要求を介してこのページに接続します。しかし、それは一種の面倒なことでもあります。
java - JavaEE用のASP.NETMVCフレームワークポート?
そのため、ASP.NET MVCフレームワークの新しい、まだ最終リリースではないものを試してみましたが、非常に素晴らしくエレガントであることがわかりました。しかし、仕事では当分の間Javaに縛られているので、私はこれを疑問に思っています。私のようなJavaの人々のためのフレームワークの移植版はありますか?残念ながら、Webフォームは利用できないことに気づきましたが、ルーティングフレームワークについてはどうでしょうか。
jakarta-ee - さまざまな知識レベルを持つ開発者のグループを管理し、対処する方法は?
私たちは、コンピューター サイエンスの分野で修士号を取得している学生のグループです。
今学期は、下の説明に従って、ソフトウェア工学プロジェクトを行う必要があります。
真のソフトウェア エンジニアリング チームとして正確に行動し、報告する必要があります。
私はこのグループのプロジェクト マネージャーに選ばれました。Java コードを書くのは得意ですが、プロジェクト マネージャーのタスクを実行した経験はありません。グループ メンバーと一緒にこのプロジェクトを行うために最善を尽くす必要があります。できるだけ良い。
問題は、さまざまなレベルの知識に対処する必要があることですが、実装部分にはすべてのメンバーが参加する必要があります。
このプロジェクトの進め方、このグループの管理方法、そしてどこから始めればよいかを誰かが教えてくれたら幸いです。メンバーをどのように励ますか、そして私の計画を実際にどのように実行するか?
説明を見て、このプロジェクトにどのテクノロジーを選択する必要があるか教えてください。
プロジェクトの説明
プロジェクトは、いわゆる Web アプリケーションとして実装する必要があります。MVC 要件のため、これはサーバー クライアント アーキテクチャ以上のものです。これを (少なくとも) 3 層アーキテクチャと呼んでいます。
ビューは、クライアントの要求に応じて動的に作成する必要があります。そのため、コンテンツはサーバー (サーバー側) によって計算される必要があります。ビュー内には、マークアップ言語以外のソース コード (「スクリプトレット」、Java コードなど) が存在してはなりません。
これにより、プログラマーがコンテンツの責任を負う Web デザイナーがビューを作成できるようになります。
逆に、ソース コードにはマークアップ言語 (HTML など) を含めないでください。
情報を保存する (永続化する) ために、システムはデータベースを使用する必要があります。ただし、ソース コード内にデータベース固有のクエリが存在しないようにする必要があります。これは、ソースがこのデータベースの使用法に大きく依存するためです。システムはオブジェクト リレーショナル マッパーと連携して、データベースから格納された情報を特別なタイプのオブジェクト (Bean) にマップする必要があります。
データベース、エンティティ、構成、初期化などのすべての構成は、XML ファイル (または注釈などの同様の方法) を使用して実現する必要があります。これにより、変更がシステムのソースの再コンパイルを必要としなくなります。
利用可能な技術 (提案):
java - EJB3ビジネスロジックのパターンと実践
私はEJB3(アプリとWebサービスレイヤーの場合はHibernate + Glassfish、WebUIの場合はLifton Glassfish)を使用してJavaで多層金融処理アプリケーションを開発中です。私のビジネスロジックを置きます。
このプロジェクトが開始されたとき、私たちの最初の概念は、ビジネスロジックの大部分をステートレスセッションBeanに入れることでした。ただし、時間が経つにつれて、EJBフレームワークによって提供される依存性注入が制限されすぎることがわかりました。そのため、ビジネスロジックの多くは、ステートレスセッションBeanの@PostConstructメソッドでGuiceによってアセンブルされるPOJOになりました。 。この進歩により、セッションBeanとPOJOの間のビジネスロジックが断片化されました。私は、これを修正するためのアプローチを見つけようとしています。
最初に、Web層でセッションBeanのリモートインターフェイスを使用して、UIとWebサービスレイヤーの両方からアクセスできるいくつかの機能を実行しようとしました。これは、@WebService注釈付きのステートレスセッションBeanによって提供されます。これは、永続性とパフォーマンスの観点からは悪夢であることが判明しました。エンティティグラフが非常に大きくなる可能性があり、分離されたエンティティグラフを永続性コンテキストに再アタッチするとエラーが発生しやすいことが判明したため、ソリューションはオブジェクトの受け渡しを開始することでした。必要な場所でデータベースからエンティティを検索します。
私の基本的な質問はこれです:ビジネスロジックをセッションBeanとPOJOのどちらにするかを決定するために、どのような原則とガイドラインを提案できますか?複雑なオブジェクトグラフがある場合、エンティティBeanを渡すことが理にかなっているのはいつですか。
hibernate - jboss 4.2.1 で ehcache 統計を有効にする
hibernate.generate_statistics=true を設定し、mbeans を登録して、jmx コンソールで統計を確認できるようにする必要があります。どこにもたどり着けないようで、これはそれほど難しい問題ではないようです。多分私は物事を複雑にしすぎているのかもしれませんが、いずれにせよこれまでに私は試しました:
- EhCacheProvider をコピーし、初期化後に init() をオーバーロードして ManagementService.registerMBeans(...) を呼び出す CacheManager の拡張バージョンをインスタンス化しました。registerMBeans(...) への実際の呼び出しまで、コードはすべて正常に実行されました。これにより、プロバイダーの初期化が一般的なエラーで失敗します (残念ながら、書き留めていませんでした)。このアプローチは、このライフレイで使用されるメソッドによって動機付けられました。パフォーマンスのウォークスルー。
- ehcache の jmx mbeans を登録するこの例と同様のコードを実行する start メソッドを使用して、独自の MBean を作成しました。すべてが正しく動作しているように見え、mbean は jmx コンソールに表示されますが、net.sf.ehcache には何も表示されません。
- それ以来、ehcache を 1.5 にアップグレードし (1.3 を使用していましたが、それが jboss 4.2.1 に固有のものなのか、自分で選択したものなのかはわかりません)、SingletonEhCacheProvider を使用するように変更し、手動で統計を取得しようとしました。 mbean 登録。ただし、実際には改善されていません。getInstance() を呼び出すと、返される CacheManager には StandardQueryCache のコピーしかありませんが、jboss ログには、他の多くのキャッシュが初期化されていることが示されます (アプリケーション内のキャッシュされたエンティティごとに 1 つ)。
編集:まあ、私は1つのことを理解しました... JConsoleを介して接続すると、統計mbeansが明らかになります。ManagementFactory.getPlatformMBeanServer() は、jboss が使用しているのと同じ mbean サーバーを提供しないと思います。とにかく、統計を手動で収集しようとしたときと同様の問題が発生しているようです。アプリを少しクリックした後でもすべてゼロになるためです。
java - J2EE サーバー内の 2 つの異なるアプリケーション間で 2 つのオブジェクト インスタンスを一致させるには、どのような方法が最適でしょうか?
基本的に、2 つの別個のサーブレットによって作成された 2 つのオブジェクトが直接通信する J2ee アプリケーションがあり、これらのインスタンスが安定している必要があります。つまり、セッション中にお互いを「認識する」必要があります。
シーケンスはおおよそ次のとおりです。
- クライアントは、オブジェクト A を作成するサーブレット #1 にリクエストを送信します。
- クライアントは、オブジェクト B を作成するサーブレット #2 に 2 番目の要求を (最初の要求が返された後に) 送信します。
- オブジェクト B が JNDI を使用して A を見つけ、2 つのオブジェクトが対話します。
- クライアントはオブジェクト A にリクエストを送信し続け、オブジェクト A は B を再度検索する必要があります。
これら 2 つのインスタンスがセッション全体でそれぞれを認識していることを確認するにはどうすればよいですか? それらを JNDI にバインドしても問題が完全に解決されるわけではありません。オブジェクト B は元のサーブレット (サーブレット #2) と通信する必要があり、リクエスト全体で安定していないからです。
何か案は?
前もって感謝します。
はい、問題の説明が少し曖昧であることは認めます。しかし、それは非常に単純なアプリケーションではありません。それでも、私はそれをよりよく尋ねようとします:
私の最終目標は、Javaステートメントを単にデバッグするJavaデバッガとは対照的に、アプリケーション用の一種の「セマンティックデバッガ」を作成することです。
デバッグされるアプリケーションは、基本的にサーブレットです。私のツールが接続するもの。このツールは、デバッグ プロセスを制御する別のサーブレットを介してアプリケーションへの接続を維持します。これら 2 つのサーブレットは、常に相互に直接通信する必要があります。
私の現在の考えは、この通信を容易にするステートフル セッション Bean をセットアップすることです (まだセットアップに苦労しています)。
しかし、これをより良く達成する方法についての考えをいただければ幸いです。