Как стать автором
Обновить

Комментарии 4

Отличная статья! Продолжайте писать.

Небольшой совет — добавить в плагин мавен опцию «игнорировать отсутствующий web.xml»:

<failonmissingwebxml>false</failonmissingwebxml>


<plugin>  
    <groupid>org.apache.maven.plugins</groupid>  
    <artifactid>maven-war-plugin</artifactid>  
    <version>2.2</version>  
    <configuration>  
        <warsourcedirectory>src/main/webapp</warsourcedirectory>  
        <warname>${project.artifactId}</warname>  
        <failonmissingwebxml>false</failonmissingwebxml>  
</configuration>  
</plugin> 


Тогда томкат 7 не будет ругаться при запуске.
Спасибо! Очень хороший совет.
Может стоит привести в статье полный код pom.xml?
Вот он:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>com.elennaro</groupId>
	<artifactId>sshwa</artifactId>
	<version>0.2-SNAPSHOT</version>
	<packaging>war</packaging>

	<name>sshwa</name>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	</properties>
    
	<dependencies>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<version>3.1.0</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>javax.servlet.jsp</groupId>
			<artifactId>jsp-api</artifactId>
			<version>2.2</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
			<version>4.0.5.RELEASE</version>
			<type>jar</type>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>4.0.5.RELEASE</version>
			<type>jar</type>
		</dependency> 
		<!-- Add Spring Security -->
		<dependency>
			<groupId>org.springframework.security</groupId>
			<artifactId>spring-security-core</artifactId>
			<version>3.2.4.RELEASE</version>
		</dependency>
		
		<dependency>
			<groupId>org.springframework.security</groupId>
			<artifactId>spring-security-web</artifactId>
			<version>3.2.4.RELEASE</version>
		</dependency>
 
		<dependency>
			<groupId>org.springframework.security</groupId>
			<artifactId>spring-security-config</artifactId>
			<version>3.2.4.RELEASE</version>
		</dependency>
		<!-- Add Jstl Dependencies -->
		<dependency>
			<groupId>org.apache.taglibs</groupId>
			<artifactId>taglibs-standard-jstlel</artifactId>
			<version>1.2.1</version>
		</dependency>
	</dependencies>
	<build>
		<finalName>sshwa</finalName>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.1</version>
				<configuration>
					<source>1.8< /sour*e>
					<target>1.8</target>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-war-plugin</artifactId>
				<version>2.4</version>
				<configuration>
					<failOnMissingWebXml>false</failOnMissingWebXml>
				</configuration>
			</plugin>
		</plugins>
	</build>

</project>
НЛО прилетело и опубликовало эту надпись здесь
Авторизация с базой в MongoDB отличная идея для статьи! Как закончу проект и появится время, постараюсь написать.
Если нужно срочно то могу постараться дать наводку:

1. Пишете CustomUserDetailsService: свою имплементацию UserDetailsService — где обращаетесь за парой Логин/Пароль в монго.
2. Пишете CustomDaoAuthenticationProvider extends DaoAuthenticationProvider, где переопределяете следующий метод:

@Autowired @Override public void setUserDetailsService(UserDetailsService userDetailsService) { super.setUserDetailsService(userDetailsService); }

3. Сажаете их в SecurityConfig:

@Override public void configure(AuthenticationManagerBuilder auth) throws Exception { auth.authenticationProvider(authenticationProvider()); }

@Bean @Override public CustomUserDetailsService userDetailsService() { return new CustomUserDetailsService(); }

@Bean public AutowiredDaoAuthenticationProvider authenticationProvider() { return new AutowiredDaoAuthenticationProvider(); }

Может я что и упустил но вроде мелочи…

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.