This page (revision-21) was last changed on 26-Jun-2012 13:47 by Dieter Käppel

This page was created on 27-Apr-2012 07:09 by Dieter Käppel

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Page revision history

Version Date Modified Size Author Changes ... Change note
21 26-Jun-2012 13:47 5 KB Dieter Käppel to previous

Page References

Incoming links Outgoing links

Version management

Difference between version and

At line 87 added one line
!JSP mit Tomcat 5
At line 124 added 53 lines
!JSP mit Tomcat 7
Bei Tomcat 7 ist die Konfiguration anders, weil er die Embedded Libraries mitbringt, eine eigene JSP-API und den Eclipse-JDT-Compiler verwendet:
{{{
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jsp-api</artifactId>
<version>${tomcat-version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
<version>${tomcat-version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-logging-juli</artifactId>
<version>${tomcat-version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-logging-log4j</artifactId>
<version>${tomcat-version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<version>${tomcat-version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.jdt.core.compiler</groupId>
<artifactId>ecj</artifactId>
<version>3.7</version>
<scope>test</scope>
</dependency>
}}}
Dazu kommt der Tomcat-Instance-Manager, der gewöhnlich beim Starten des Tomcat erzeugt wird. Da durch [HttpUnitProtocol] kein Tomcat gestartet wird, injeziert man den InstanceManager selbst in den Servlet-Context:
{{{
StandardContext context = new StandardContext();
context.setLoader(new WebappLoader(Thread.currentThread().getContextClassLoader()));
Map<String, Map<String, String>> injectionMap = new HashMap<String, Map<String,String>>();
InstanceManager instanceManager = new DefaultInstanceManager(null, injectionMap, context, Thread.currentThread().getContextClassLoader());
HttpUnitProtocol protocol = new HttpUnitProtocol("/test");
protocol.getRunner().setContextParameter(InstanceManager.class.getName(), instanceManager);
}}}