Quantcast
Channel: Spring i18n Vs Spring security
Viewing all articles
Browse latest Browse all 2

Spring i18n Vs Spring security

$
0
0
I configured my project to be internation but now i am trying to change spring security custom messages without success... I already read and tried some things but without success. I can se usual messages, but not spring security messages.

here is my servlet-context.xml:

<!-- DispatcherServlet Context: defines this servlet's request-processing infrastructure -->

<!-- Enables the Spring MVC @Controller programming model -->
<annotation-driven />

<!-- Handles HTTP GET requests for /resources/** by efficiently serving up static resources in the ${webappRoot}/resources directory -->
<resources mapping="/resources/**" location="/resources/" />

<!-- Tiles -->
<beans:bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
 <beans:property name="definitions">
 <beans:list>
 <beans:value>/WEB-INF/tiles.xml</beans:value>
 </beans:list>
 </beans:property>
</beans:bean>

<beans:bean class="org.springframework.web.servlet.view.tiles2.TilesViewResolver"> 
 <beans:property 
 name="viewClass" value="org.springframework.web.servlet.view.tiles2.TilesView"/> 
</beans:bean>

<context:component-scan base-package="com.company.projectMvc" />


<!-- default locale -->
<beans:bean class="org.springframework.web.servlet.i18n.SessionLocaleResolver" id="localeResolver"> 
 <beans:property name="defaultLocale" value="es"/> 
 </beans:bean> 


 <interceptors> 
 <beans:bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
 <beans:property name="paramName" value="language"/> 
 </beans:bean> 
 </interceptors> 

<!-- Messages files -->
<beans:bean id="messageSource" name="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
 <beans:property name="basename" value="/resources/messages/messages" />
</beans:bean>


here is my spring-security.xml:

<http auto-config="true" use-expressions="true" >
 <intercept-url pattern="/test" access="isAuthenticated()" />
 <intercept-url pattern="/**" access="isAuthenticated()" />
 <intercept-url pattern="/home" access="permitAll" />

 <form-login default-target-url="/home"/>
 <logout logout-success-url="/test" />
</http>


<authentication-manager>
 <authentication-provider>
 <jdbc-user-service data-source-ref="dataSource"

 users-by-username-query="
 select username,password,enabled,fullname
 from users where username=?" 

 authorities-by-username-query="
 select u.username, ur.authority from users u, user_roles ur 
 where u.user_id = ur.user_id and u.username =? " 

 />
 </authentication-provider>
</authentication-manager>
UPDATE 1 I tried your solution, copying spring security files and change them without success.. After i read this thread http://stackoverflow.com/questions/6572377/spring-security-with-acceptheaderlocaleresolver-and-i18n i tried that solution too without success here is my updated servlet-context.xml file:

 <!-- DispatcherServlet Context: defines this servlet's request-processing infrastructure -->

<!-- Enables the Spring MVC @Controller programming model -->
<annotation-driven />

<!-- Handles HTTP GET requests for /resources/** by efficiently serving up static resources in the ${webappRoot}/resources directory -->
<resources mapping="/resources/**" location="/resources/" />

<!-- Tiles -->
<beans:bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
 <beans:property name="definitions">
 <beans:list>
 <beans:value>/WEB-INF/tiles.xml</beans:value>
 </beans:list>
 </beans:property>
</beans:bean>

<beans:bean class="org.springframework.web.servlet.view.tiles2.TilesViewResolver"> 
 <beans:property 
 name="viewClass" value="org.springframework.web.servlet.view.tiles2.TilesView"/> 
</beans:bean>

<context:component-scan base-package="com.company.projectMvc" />

 <!-- default locale pt_PT -->
<beans:bean class="org.springframework.web.servlet.i18n.SessionLocaleResolver" id="localeResolver"> 
 <beans:property name="defaultLocale" value="pt_PT"/> 
 </beans:bean> 

<!-- Messages files -->
<beans:bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
 <beans:property name="basenames">
 <beans:list>
 <beans:value>/resources/messages/messages</beans:value>
 <beans:value>/resources/messages/securityMessages</beans:value>
 </beans:list>
 </beans:property>



</beans:bean>

<!-- com o parametro locale no URL conseguimos definir o locale que quisermos -->
 <interceptors> 
 <beans:bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
 <beans:property name="paramName" value="lang"/> 
 </beans:bean> 
 </interceptors> 
Here is my updated web.xml

http://imageshack.us/photo/my-images/812/80760783.png

http://imageshack.us/photo/my-images/515/17151547.png


Viewing all articles
Browse latest Browse all 2

Latest Images

Trending Articles





Latest Images