問題タブ [contextpath]
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.
url - jboss 外部ファイル アクセス
特定の Web サイト/コンテキスト (複数の Web サイトに共通の画像など) の外部にあるファイルにアクセスしようとしています。jboss-web.deployer/server.xml を次のようにセットアップしました。
URL 経由でファイルにアクセスします。
これは、ローカルの jboss インスタンス (Windows XP および 7) を使用して、Ecplise でデバッグしているときに機能します。jboss のバージョンは 4.3.0 です。しかし、Linux サーバーにデプロイすると、「接続が拒否されました」という ConnectException が発生します。
「8080」を省略しようとしましたが、明示的なパスを試しました:
8080 を省略すると、同じ ConnectException が発生します。ホスト名を使用すると、302 エラーが発生し、リダイレクト リンクに正しい URL が示されます。
私が除外しているものについて何か考えはありますか?
websphere - IHS+WAS 構成で Web モジュールのルート・コンテキストを変更する方法は?
私は次の構成を持っています:
- デプロイされたアプリケーションを含む Websphere ND 8.0。
- IHS (IBM HTTP サーバー) 8.0;
- Web サーバー プラグイン 8.0。
デプロイされたすべてのアプリケーションには、いくつかの固有のルート コンテキストがあります。私が必要としているのは、それらのいくつかのルート コンテキストを変更することです。たとえば、次のリンクがあります - http//host:port/app1/index.jsp
、 app1 はルートコンテキストです。次のリンクから機能させる必要がありますhttp//host:port/cust/app1/index.jsp
。(そのような変更後に古いリンクが機能しない場合は、より良いでしょう)。
IHSレイヤーなしでこれに到達しようとしました。WAS ではルート コンテキストを変更できますが、これは非常に簡単です。問題は、デプロイされたアプリが内部リソース内のルート コンテキストへの直接マッピングを使用することです。(つまり、JS、HTML などの一部の app1 のリソースには、/app1/... への直接の参照が含まれています)。この場合、ルート コンテキストの単純な変更は適切ではありません。このような内部リソースはすべて手動で変更する必要があります。私はこれが貧弱な実装であることを知っていますが、それは私が持っているものです. このソリューションは間違いなく最善ではありませんが、少なくとも機能します。
私は同じことをする必要があります(まあ、同じではありません。結果は同じはずです)が、今はIHSを使用しています。IHS のインストール\構成に詳しくありません。これがどのように機能するかについての私の理解です:
クライアント -> IHS -> WAS (アプリケーション)
IHS は、mod_was_ap22_httpプラグインを介して WAS と通信しました。ここで、plugin-cfg.xmlは、処理される URL テンプレートを示しています。(具体的にどのように機能するかはわかりません)
*基本的にクレントは次のリクエストを送信します - http//IHS_host:port/app1/index.jsp
.
*mod_was_ap22_http を介して要求する IHS 開始プロセス。
*要求が plugin-cfg.xml ルールに一致する場合、要求は WAS に送られます。
今回は常にルート コンテキストはapp1でした。元のルート コンテキストを変更するように IHS を構成し、クライアントが新しいルート コンテキストのみを介して動作するようにすることは可能ですか? 結果ユーザーhttp//IHS_host:port/app1/*
には が表示されないため、 のみが表示されます。http//IHS_host:port/cust/app1/*
jsp - spring mvc で構築されたコンテキストの下にある静的リソースの href を定義する
私はSpring SecurityでSpring MVCを使用しています。私が直面している問題は、jsp ファイルに設定する静的リソース パスを作成することです。
私のアプリがコンテキスト名でデプロイされているとしますctxt
css
すべての jsp にファイルを含めたいとします。そのため、href
このように記述しstatic/css/global.css
ます。次の URL にアクセスするとどうなりますか。
localhost/ctxt/dashboard (css
200
OK - ブラウザーでの css の最終的な URL は = になりますlocalhost/ctxt/static/css/global.css
)localhost/ctxt/dashboard/status (css
404
が見つかりません - ブラウザーでの css の最終的な URL は = になりますlocalhost/ctxt/dashboard/static/css/global.css
)
そしてhref
、jsp の css を thisに変更すると/static/css/global.css
。次に、これらの URL にアクセスしようとすると:
localhost/ctxt/dashboard (css
404
が見つかりません - ブラウザーでの css の最終的な URL は = になりますlocalhost/static/css/global.css
)localhost/ctxt/dashboard/status (css
404
が見つかりません - ブラウザーでの css の最終的な URL は = になりますlocalhost/static/css/global.css
)
jsp - .jsp で画像と .css ファイルを表示する方法
style.css からロゴとフォーマットを表示しようとしているファイル FixHome.jsp があります。ただし、.jsp ファイルを実行すると、画像が表示されず、stye.css ファイルのフォーマットが実装されません。
ファイルの場所は、次のように FixConnections プロジェクトの下にあります。
/WebContent/FixHome.jsp
/WebContent/Resources/style.css
/WebContent/Resources/needhamlogo2.bmp
私はEclipseを使用しており、Tomcat 7.0を実行しています
画像と .css ファイルを正しく参照しているかどうかをお知らせください。
jsp - 「<%=request.getContextPath()%>」を「../」よりも優れた方法で使用する方法
私は、ビュー レイヤーが JSP である J2EE プロジェクトに数多く携わってきました。ほとんどのプロジェクトで、スクリプトレットの contextPath を使用して、画像、javascript、jsp、css などの外部リソースを参照しているのを見てきました。
コードは次のとおりです。
上記の jsp から、ここで、同じプロジェクト バンドルにある外部リソース、つまり戦争にある外部リソースをインポートしています。
上記の同じ JSP は、以下のコードのように記述できます。
ここで 2 番目の例でも、戦争に存在するリソースを参照しています。
上記の 2 つのケースの両方を考慮すると、最初のケースがベスト プラクティスとしてより重要になります。
なんで?
2番目のケースを使用することの欠点は何ですか?
2 番目のケースを使用すると、プロジェクトはコンテキストパスとより緊密に結合されますか?
私に説明してください。
jakarta-ee - URL からアプリ名を省略し、ドメイン名だけを使用してアプリケーションにアクセスしますか?
アプリケーションを次のような URL で実行したい:
それ以外の :
これをどのように設定すればよいですか?
context.xml
(プロジェクトディレクトリ内で)path
属性を として指定することで、これを達成する方法を見つけましたpath="/"
。しかし、これが最善の方法であるかどうかわかりませんか?!
もう 1 つの懸念は、以前は でアクセスできた Tomcat サーバーのルート ページにどのようにアクセスするlocalhost:8080
かということです。
Tomcat 7 で実行されている JSF (Myfaces 2.2 ベータ) プロジェクトに取り組んでいます
java - 「/localhost」を servletContext.getResource("myStaticFile") に追加する Tomcat/TomEE
私の WAR は TomEE で正しいコンテキスト ルート "/myApp" の下に正常に展開されているため、次の場所に移動できます。http://localhost:8080/myApp
/myApp/WEB-INF/files の下にいくつかの静的ファイルがあります。
展開されたWARを見ると、ファイルは間違いなくそこにあります。私の問題は、私が書いたコードservletContext.getResource("/WEB-INF/files/MyFile.json")
で、ログの実際のパスが次のように見えるため、ファイルが見つからないというエラーが発生することです。
/localhost/myApp/WEB-INF/files/MyFile.json
このコードは、通常の Tomcat サーバー、Google App Engine、さらには WebSphere 7 でアプリを使用していたときに実際に機能していました。TomEE では、アプリを webapps ではなく wtpwebapps にデプロイしています。コンテキスト構成の検索を行いましたが、それらのほとんどは、アプリに "" のコンテキスト ルートを持たせること (ルート アプリにすること) を扱っています。
URL の「/localhost」の部分を削除するコードを書くことはできますが、なぜそこに配置されているのでしょうか?
java - の代替トムキャットで
Tomcat 7 にデプロイされたアプリケーションがあり、このアプリに別の URL を持つ「エイリアス」が必要です。このような:
これを実装するには、次のように server.xml でいくつかの「< context>」エントリを使用しました。
等々。
これはそれを解決する正しい方法ですか?定義する「< context>」が多いほど、サーバーの起動に必要な時間が長くなり、より多くのメモリが割り当てられることがわかりました (PermGen OutOfMemory エラーが発生する場合があります)。mainappへの「ショートカット」URLを作成する方法はありますか?