Login Migrated to MVC 3.0

This commit is contained in:
Paulo Gustavo Veiga 2012-06-16 17:03:17 -03:00
parent 7d6b82c626
commit ea2bff60f7
6 changed files with 60 additions and 118 deletions

View File

@ -1,72 +0,0 @@
/*
* Copyright [2011] [wisemapping]
*
* Licensed under WiseMapping Public License, Version 1.0 (the "License").
* It is basically the Apache License, Version 2.0 (the "License") plus the
* "powered by wisemapping" text requirement on every single page;
* you may not use this file except in compliance with the License.
* You may obtain a copy of the license at
*
* http://www.wisemapping.org/license
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.wisemapping.controller;
import com.wisemapping.model.UserLogin;
import com.wisemapping.model.User;
import com.wisemapping.security.Utils;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.multiaction.NoSuchRequestHandlingMethodException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Calendar;
public class LoginController
extends BaseMultiActionController {
private String driver;
protected ModelAndView handleNoSuchRequestHandlingMethod(NoSuchRequestHandlingMethodException noSuchRequestHandlingMethodException, HttpServletRequest request, HttpServletResponse httpServletResponse) throws Exception {
// Reload user only in case of beeing necessary...
final User user = Utils.getUser(request);
ModelAndView result;
if (user != null) {
result = new ModelAndView("forward:/c/maps/");
} else {
result = new ModelAndView("login");
result.addObject("isHsql", driver.indexOf("hsql")!=-1);
}
return result;
}
public ModelAndView auditLogin(HttpServletRequest request, HttpServletResponse response) {
logger.info("Login Controller: auditLogin");
final String username = request.getUserPrincipal().getName();
final UserLogin userLogin = new UserLogin();
final Calendar now = Calendar.getInstance();
userLogin.setLoginDate(now);
userLogin.setEmail(username);
//userManager.auditLogin(userLogin);
return new ModelAndView("forward:/c/maps/");
}
public void setDriver(String driver) {
this.driver = driver;
}
public String getDriver() {
return driver;
}
}

View File

@ -21,6 +21,7 @@ package com.wisemapping.ncontroller;
import com.wisemapping.model.MindMap;
import com.wisemapping.service.MindmapService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
@ -29,6 +30,7 @@ import java.io.IOException;
@Controller
public class ExtensionsController {
@Qualifier("mindmapService")
@Autowired
private MindmapService mindmapService;

View File

@ -0,0 +1,49 @@
/*
* Copyright [2011] [wisemapping]
*
* Licensed under WiseMapping Public License, Version 1.0 (the "License").
* It is basically the Apache License, Version 2.0 (the "License") plus the
* "powered by wisemapping" text requirement on every single page;
* you may not use this file except in compliance with the License.
* You may obtain a copy of the license at
*
* http://www.wisemapping.org/license
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.wisemapping.ncontroller;
import com.wisemapping.model.User;
import com.wisemapping.security.Utils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
@Controller
public class LoginController {
@Value("${database.driver}")
private String driver;
@RequestMapping(value = "login", method = RequestMethod.GET)
protected ModelAndView showLoginPage(HttpServletRequest request) {
final User user = Utils.getUser(request);
ModelAndView result;
if (user != null) {
result = new ModelAndView("forward:/c/maps/");
} else {
result = new ModelAndView("login");
result.addObject("isHsql", driver.indexOf("hsql") != -1);
}
return result;
}
}

View File

@ -90,8 +90,8 @@
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>
<!--/WEB-INF/wisemapping-servlet.xml-->
/WEB-INF/wisemapping-nservlet.xml
/WEB-INF/wisemapping-servlet.xml
</param-value>
</init-param>

View File

@ -15,6 +15,7 @@
<context:annotation-config/>
<mvc:annotation-driven/>
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="/WEB-INF/app.properties"/>
</bean>
@ -60,6 +61,12 @@
<property name="includeNoscript" value="false"/>
</bean>
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- one of the properties available; the maximum file size in bytes -->
<property name="maxUploadSize" value="522240"/>
</bean>
<bean id="browserSupportInterceptor" class="com.wisemapping.filter.BrowserSupportInterceptor">
<property name="exclude">
<list>

View File

@ -3,37 +3,7 @@
<beans>
<bean id="paramResolverByAction"
class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
<property name="paramName" value="action"/>
</bean>
<bean id="paramResolverByAction2"
class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
<property name="paramName" value="actionId"/>
</bean>
<!--<bean id="localeResolver"-->
<!--class="org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver">-->
<!--</bean>-->
<bean id="homeResolver" class="org.springframework.web.servlet.mvc.multiaction.PropertiesMethodNameResolver">
<property name="mappings">
<props>
<prop key="try">tryEditor</prop>
<prop key="installCFG">installCFG</prop>
</props>
</property>
</bean>
<bean id="loginController" class="com.wisemapping.controller.LoginController">
<property name="methodNameResolver" ref="paramResolverByAction"/>
<property name="mindmapService" ref="mindmapService"/>
<property name="userService" ref="userService"/>
<property name="driver" value="${database.driver}"/>
</bean>
<bean id="userValidator" class="com.wisemapping.validator.UserValidator">
<bean id="userValidator" class="com.wisemapping.validator.UserValidator">
<property name="userService" ref="userService"/>
<property name="captchaService" ref="reCaptcha"/>
</bean>
@ -88,19 +58,6 @@
<property name="userService" ref="userService"/>
</bean>
<bean id="historyController" class="com.wisemapping.controller.HistoryController">
<property name="methodNameResolver" ref="paramResolverByAction"/>
<property name="mindmapService" ref="mindmapService"/>
<property name="userService" ref="userService"/>
</bean>
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- one of the properties available; the maximum file size in bytes -->
<property name="maxUploadSize" value="522240"/>
</bean>
<bean id="activationController" class="com.wisemapping.controller.ActivationController">
<property name="userService" ref="userService"/>
</bean>
@ -121,7 +78,6 @@
<prop key="changePassword">changePasswordController</prop>
<prop key="settings">settingsController</prop>
<prop key="editProfile">editProfileController</prop>
<prop key="history">historyController</prop>
</props>
</property>
</bean>