Abbiamo una chiara astrazione tra i livelli di servizio & visualizza le configurazioni del contesto dei livelli e li stiamo caricando come mostrato di seguito.Come impostare il contesto dell'applicazione Web nel test MVC di primavera
Root application context:
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:META-INF/spring/applicationContext*.xml</param-value>
</context-param>
Web application context:
<servlet>
<servlet-name>lovemytasks</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/mmapp-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
Ora stiamo cercando di introdurre Spring MVC TEST QUADRO per testare la nostra applicazione.
Per questo ho bisogno di configurare lo stesso ambiente in cui funziona la mia vera applicazione web.
Come posso farlo?
Ho provato sotto la configurazione del mio test per caricare entrambi i contesti.
@ContextConfiguration(locations = { "classpath*:META-INF/spring/applicationContext*.xml",
"file:src/main/webapp/WEB-INF/spring/mmapp-servlet.xml" })
Ma la sua erroring fuori dicendo
Caused by: org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Duplicate <global-method-security> detected.
Abbiamo definito la sicurezza globale sia in contesto applicativo radice e il contesto di applicazioni web.
Nota: il problema sopra riportato non verrà visualizzato quando eseguo la mia applicazione web. Succede solo quando eseguo il test Spring MVc
Ho provato a rimuovere la mia sicurezza globale e un posto e poi a creare errori con i servizi di conversione durante l'esecuzione dei miei test. Il che mi ha avvertito che non sto caricando il contesto come fa la vera applicazione Spring.
Ora, vorrei impostare il mio ambiente di test Spring MVC per utilizzare o lavorare allo stesso modo in cui funziona l'ambiente delle applicazioni web Spring. Qualcuno può suggerire come posso ottenerlo?
Non voglio unire entrambi i file di contesto o includerlo nel contesto dell'applicazione web a causa di pochi problemi architettonici. Inoltre, voglio la stessa impostazione del contesto dell'applicazione che si verifica durante l'esecuzione della mia applicazione anche nei miei test. – Shiv