Struts 2のvalidatorとWEB-INFの下でページのインタラクションとパスの問題

2024 ワード

ショートチェッカーを使うと(クライアント)、ページの下にいつもFreeMarker template errorが出てきます!そして私は私のページをWEB-INFに置いたが、結局多くのパスが間違っていた.クライアントはStrutsFilterの下のWEB-INFの下のものに直接アクセスしていないのでstrutsで管理するように要求した.そうすれば、私は元のすべてのstrutsに配置されていたパスに「/WEB-INF」を加えた.すべてのページのリンクは、タイプを登録しstruts.xmlには、リンク管理の中継局として使用する汎用actionが構成されています.
1 <action name="*">

2     <result>/WEB-INF/{1}.jsp</result>

3 </action>

次は他の人からcopyが来て、後で調べるのに便利です.
1.ページリソースファイルは、CSS、JS、imageなど、webrootの下にしか置けません.WEB-INFの下では引用できません.jpetstoreのように
2.WEB-INFディレクトリの下にページを置くことでアクセスを制限、セキュリティを向上することができる.例えばJSP,html
3.WEB-INFディレクトリの下のJSPには転向方式でしかアクセスできず、リダイレクト方式でそのディレクトリ内のいかなるリソースを要求する必要はない.図:index.jsp >>  main.jsp
4.WEB-INFディレクトリの下のファイルがリソースファイルにアクセスする場合、WEB-INFという階層ディレクトリは無視できる.例えばmain.jspはcssディレクトリのcssファイルを使用します.
これでいいので、クライアントのアドレスからわかります
サーバーはmainに向かいます.jspはwebrootの下にあります.だからjspとcssディレクトリは同じレベルのディレクトリと言える.
5.WEB-INF/oaディレクトリの下でimagesディレクトリにアクセスする.どうしようかなimg alt=""src="images/instpage.gif">はやはりそうである.
6.WEB-INFディレクトリの下のファイル間でどのようにアクセスするか.例えばmain.jsp用テストOAのパスアクセス
mainのようです.jspはWEB-INFディレクトリの下にリンクする他のページが10箇所ある.10個のステアリングが必要ですこれはDispatchActionクラスにパラメータを加えてステアリング作業を専門に処理することができる.
注意:ステアリング方法:struts-configファイルで
またはアクションにrequestと書く.getRequestDispatcher("/WEB-INF/main.jsp").forward(request, response);
いずれもサーバがそのページの内容を読み取るクライアントに送信する.クライアントのアドレスは変わらない.内容がジャンプした
リダイレクト:struts-configファイルでredirect="true"/>またはactionでresponse.sendRedirect("/error.jsp");
リダイレクトの意味は、サーバがクライアントにアドレスを送り、クライアントにアクセスさせることである.この方法は明らかにWEB-INFディレクトリに対して無駄である.