何らかの理由で、UrlRewriteFilterを使用して、何らかの理由でSpring MVCプロジェクトのクエリ文字列でURLから ".jsp"を削除する必要があります。UrlRewriteFilterを使用してクエリ文字列を含むURLから ".jsp"を削除する方法
は例えば、私は様々なルールを試してみました
http://localhost:8080/admin/project.jsp?m_product=GA&m_code1=QULQ2U
http://localhost:8080/admin/project?m_product=GA&m_code1=QULQ2U
に変更したいが、ない成功。例えば
、私は
<rule>
<from>/admin/project.jsp?(.+)</from>
<to type="redirect">/admin/project?$1</to>
</rule>
としてルールを設定するとき、私は前に疑問符を逃れるために、次のルールを使用する場合UrlRewriteFilterが
admin/project?p
に
admin/project.jsp?m_product=GA&m_code1=QULQ2U
を変更しますクエリ文字列
<rule>
<from>/admin/project.jsp\?(.+)</from>
<to type="redirect">/admin/project?$1</to>
</rule>
UrlRewriteFilterはURLを書き換えません。
あなたのお手伝いがありがとうございます。 VIEW助けのため
としてページに書き込まれるように、ルール
の下に使用しますURLパスのみで動作しています(クエリ文字列は含まれていません。クエリを処理するには、 ''を使用するか、 '文字列)。したがって '?'は前の文字 'p'(' jsp')をオプションにするので、最初のルールはどんな形でも動作します。第2の規則では、あなたは '?'必要な文字を作った。それは常に存在しなければならない。 '\?(。+)'の代わりに '(\?(。+))?'を試し、 '$ 1'を' $ 2'に置き換えてください。 (** P.S。**は一般的なアイディアですが、私はUrlRewriteFilterにはあまり慣れていません) –
LazyOne