webapps ディレクトリに login.jsp 、forgetpass.jsp ファイルがあり、WEB-INF/jsp フォルダーの下にさらに 2 つの jsp ファイルがあります。
ユーザーがlogin.jspページのForgotPasswordリンクをクリックすると、Springコントローラーの1つによって読み取られるデータを入力すると、forgotpassword.jspにリダイレクトされ、Springコントローラーは属性を設定し、同じjspページを返します。
私の remote-servlet.xml ファイルの構成は次のとおりです。
...
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"></property>
<property name="prefix" value="/WEB-INF/jsp/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
ForgotPasswordController.java
@RequestMapping(value = "/pass", method =RequestMethod.POST)
public String recoverPassword(@RequestParam String email, ModelMap model){
List<String> emails = usersDao.getEmails();
...
if (!emails.contains(email)) {
model.addAttribute("failMessage", "Password Recovery Failed ! Invalid loginId or EmailId");
}else{
String validEmail = email;
model.addAttribute("successMessage", "A New Password is Sent to your emailId "+ "xxx"+email.substring(email.indexOf('@')-3,email.length()));
}
return "forgotpassword";
}
}
問題は、構成プロパティのプレフィックスとサフィックスを付けた後、返されるパスが /myapp-Path/WEB-INF/jsp/forgotpassword.jsp になることです。
しかし、私の forgetpassword.jsp は /webapps/ ディレクトリにありますが、Spring は WEB-INF/jsp/ フォルダの下でそれをチェックしています。
プレフィックス「/」とサフィックス「.jsp」を持つ別のプロパティを追加できますか? これが不可能な場合は、解決策を提案してください。