Bonjour,
je développe une petite application avec Spring MVC
Concernant la partie internationalisation j'ai un problème et un message d'erreur de la sorte :
voici le code de applicationContext.xml :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67 GRAVE: "Servlet.service()" pour la servlet jsp a lancé une exception javax.servlet.jsp.JspTagException: No message found under code 'locale.fr' for locale 'fr_FR'. at org.springframework.web.servlet.tags.MessageTag.doStartTagInternal(MessageTag.java:184) at org.springframework.web.servlet.tags.RequestContextAwareTag.doStartTag(RequestContextAwareTag.java:79) at org.apache.jsp.WEB_002dINF.views.home.home_jsp._jspx_meth_fmt_005fmessage_005f0(home_jsp.java:684) at org.apache.jsp.WEB_002dINF.views.home.home_jsp._jspService(home_jsp.java:399) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:438) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:720) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:466) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:391) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:318) at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:238) at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:262) at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1180) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:950) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778) at javax.servlet.http.HttpServlet.service(HttpServlet.java:622) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:217) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:673) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Unknown Source) nov. 04, 2017 2:43:39 PM org.apache.catalina.core.StandardWrapperValve invoke GRAVE: Servlet.service() for servlet [appServlet] in context with path [/mvc] threw exception [An exception occurred processing JSP page /WEB-INF/views/menu_top/topMenu.jsp at line 216 213: <c:url value="/changelocale/fr" var="frUrl" /> 214: <c:url value="/changelocale/en" var="enUrl" /> 215: <!-- 216: <li><a href="${frUrl }"><i class="fa fa-user fa-fw"></i><fmt:message code="locale.fr" /></a> 217: </li> 218: <li><a href="${enUrl }"><i class="fa fa-gear fa-fw"></i> <fmt:message code="locale.en" /></a> 219: </li> Stacktrace:] with root cause javax.servlet.jsp.JspTagException: No message found under code 'locale.fr' for locale 'fr_FR'.
Le code du Controller:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 <mvc:interceptors> <ref bean="localInterceptor"/> </mvc:interceptors> <bean id="localInterceptor" class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor"> <property name="paramName" value="locale" /> </bean> <bean id="localResolver" class="org.springframework.web.servlet.i18n.SessionLocaleResolver"> <property name="defaultLocale" value="fr" /> </bean> <bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource"> <property name="basename" value="/WEB-INF/messages/applicationResources" /> <property name="defaultEncoding" value="UTF_8" /> </bean>
et la page invoqué :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 @Controller @RequestMapping(value = "/changelocale") public class ChangeLocaleController { private static final String REFERER = "referer"; @RequestMapping(value = "/{locale}") public String changeLocale(HttpServletRequest request, HttpServletResponse response, @PathVariable String locale) { if (!StringUtils.isEmpty(locale)) { ApplicationUtils.changeLocale(request, response, locale); } String lastUrl = request.getHeader(REFERER); if (!StringUtils.isEmpty(lastUrl)) { return "redirect:" + lastUrl; } return "redirect:/home"; } }
ça fait 3 jours que j'essye de trouvé la solution j'ai revérifier tout le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib uri="http://www.springframework.org/tags/form" prefix="f" %> <%@ page session="true" %> <%@ taglib uri="http://www.springframework.org/tags" prefix="fmt" %> <%@ page session="true" %> <%@ page trimDirectiveWhitespaces="true" %> <ul class="dropdown-menu dropdown-user"> <li><a href="#"><i class="fa fa-user fa-fw"></i> User Profile</a> </li> <li><a href="#"><i class="fa fa-gear fa-fw"></i> Settings</a> </li> <li class="divider"></li> <c:url value="/changelocale/fr" var="frUrl" /> <c:url value="/changelocale/en" var="enUrl" /> <li><a href="${frUrl }"><i class="fa fa-user fa-fw"></i><fmt:message code="locale.fr" /></a> </li> <li><a href="${enUrl }"><i class="fa fa-gear fa-fw"></i> <fmt:message code="locale.en" /></a> </li> <li class="divider"></li> <c:url value="j_spring_security_logout" var="logout" /> <li><a href="${logout }"><i class="fa fa-sign-out fa-fw"></i> Logout</a> </li> </ul>
merci de m'aidé![]()
Partager