воскресенье, августа 28, 2011

Tomcat, Spring, Vaadin

Скопировал spring-instrument-tomcat-3.0.2.RELEASE.jar в server/lib (на самом деле конкретный релиз не важен, просто такой был у меня)

В META-INF/context.xml добавил

  <Context path="/my-context-path">
        <Loader loaderClass="org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader"/>
  </Context>

Вместо этого можно было бы в catalina.bat прописать так:
SET JAVA_OPTS=%JAVA_OPTS% -javaagent:"%CATALINA_HOME%\lib\spring-instrument-3.0.2.RELEASE.jar"

При этом в server/lib понадобился бы spring-instrument-tomcat-3.0.2.RELEASE.jar

В web.xml

  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>


  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath*:app-config.xml</param-value>
  </context-param>


Конфигурируем класс vaadin-приложения

@Configurable(preConstruction = true)
public class MyApplication extends Application {

    @Autowired
    private MyService service;
 
    @Override
    public void init() {
Window mainWindow = new Window("MyApplication");                  
         ...   ...   ....
     
setMainWindow(mainWindow);              
    }
}

Комментариев нет: