2013-03-26 11 views
11

Ho impostato un regno di sicurezza molo come segue (da utilizzare con mvn jetty: run). questo funziona:mvn jetty: run non trova il mio LoginService

pom.xml

<plugin> 
    <groupId>org.mortbay.jetty</groupId> 
    <artifactId>jetty-maven-plugin</artifactId> 
    <configuration> 
     <webAppXml>src/test/resources/jetty-test.xml</webAppXml> 
     <useTestScope>true</useTestScope> 
    </configuration> 
    </plugin> 

molo-test.xml

<?xml version="1.0" encoding="ISO-8859-1"?> 
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd"> 
<Configure class="org.eclipse.jetty.webapp.WebAppContext"> 
    <Get name="securityHandler"> 
    <Set name="loginService"> 
     <New class="org.eclipse.jetty.security.HashLoginService"> 
     <Set name="name">MySecurityRealm</Set> 
     <Set name="config">src/test/resources/jetty-realm.properties</Set> 
     <Call name="start"/> 
     </New> 
    </Set> 
    <Set name="checkWelcomeFiles">true</Set> 
    </Get> 
</Configure> 

pom.xml

poi cerco di eliminare la necessità di molo-test. file xml, come segue.

<plugin> 
     <groupId>org.mortbay.jetty</groupId> 
     <artifactId>jetty-maven-plugin</artifactId> 
     <configuration> 
    <!--  <webAppXml>src/test/resources/jetty-test.xml</webAppXml> --> 
      <useTestScope>true</useTestScope> 
      <loginServices> 
      <loginService implementation="org.eclipse.jetty.security.HashLoginService"> 
       <name>MySecurityRealm</name> 
       <config>${basedir}/src/test/resources/jetty-realm.properties</config> 
      </loginService> 
      </loginServices> 
     </configuration> 
     </plugin> 

ma non riesce con:

2013-03-26 16:33:26.197:WARN:oejuc.AbstractLifeCycle:FAILED [email protected]: java.lang.IllegalStateException: No LoginService for [email protected]7dde in [email protected] 

Qualche idea?

Sto usando questa documentazione: http://wiki.eclipse.org/Jetty/Feature/Jetty_Maven_Plugin#Configuring_Security_Settings

risposta

1

Probabilmente hai vincoli di sicurezza nel proprio web.xml: reference. Ecco perché non è riuscito quando hai commentato la configurazione di jetty-test.xml.

9

Controllare se sotto-elemento <name>MySecurityRealm</name> per <loginServices> nella configurazione molo-maven-plugin è la stessa per il <realm-name>MySecurityRealm</realm-name><login-config> nel vostro web.xml.

+0

questa risposta risolve il mio problema, grazie mille! –