2010-09-08 19 views

Odpowiedz

6

Niestety, po robi jakieś badania, nie sądzę, istnieje sposób, aby edytować złącza server.xml użytkownika. mvn tomcat:run używa osadzonego Tomcat.

Jeśli ktoś coś nie znajdzie, wydaje się, że najlepiej będzie przenieść się do maven cargo plugin i zindeksować swoją własną instalację Tomcat za pomocą niestandardowego server.xml.

<cargo containerId="tomcat7x" [...]> 
    <zipUrlInstaller 
     installUrl="file://tomcat-custom.zip", 
     installDir="target/installs"/> 
    [...] 
</cargo> 

albo coś w tym rodzaju ...

+0

Wygląda na to, że masz rację, nie ma sposobu, aby to zrobić w innym momencie niż zwijanie własnego hacka, na przykład poprzez wtyczkę ładunkową . – niklassaers

1

zobaczyć http://docs.codehaus.org/display/CARGO/Custom+File+Configurations

i myśleć można to zrobić tak i umieścić swój własny server.xml w projekcie:

<configuration> 
    <type>standalone</type> 
    <configfiles> 
     <configfile> 
      <file>${basedir}/src/main/resources/server.xml</file> 
      <todir>conf</todir> 
     </configfile> 
    </configfiles> 
</configuration> 

i użyj domyślnego ładunku server.xml jako szablonu do uzyskania pr operty wymiana:

<Server port="@[email protected]" shutdown="SHUTDOWN" debug="@[email protected]"> 

    <Service name="Catalina" debug="@[email protected]"> 

    <Connector port="@[email protected]" 
     maxThreads="150" minSpareThreads="25" maxSpareThreads="75" 
     enableLookups="false" redirectPort="8443" acceptCount="100" 
     connectionTimeout="20000" disableUploadTimeout="true" 
     scheme="@[email protected]" secure="@[email protected]" 
     debug="@[email protected]" 
     emptySessionPath="@[email protected]" 
     URIEncoding="@[email protected]" /> 

    <!-- Define an AJP 1.3 Connector on port @[email protected] --> 
    <Connector port="@[email protected]" protocol="AJP/1.3" redirectPort="8443" /> 

    <Engine name="Catalina" defaultHost="@[email protected]" 
     debug="@[email protected]"> 

     <Realm className="org.apache.catalina.realm.MemoryRealm" /> 

     <!-- Note: There seems to be a bug in Tomcat 5.x if the debug attribute 
      is present. Ideally we would have written: 
       debug="@[email protected]" 
      However, doing this result in a NullPointerException in 
      ExpandWar.java at line 145. --> 
     <Host name="@[email protected]" appBase="webapps" unpackWARs="true" 
      autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> 

     <!-- Contexts to explicitely point to where the wars are located --> 
     @[email protected] 

     <Valve className="org.apache.catalina.valves.AccessLogValve" 
      directory="logs" prefix="@[email protected]_access_log." suffix=".txt" 
      pattern="common" resolveHosts="false"/> 

     </Host> 
    </Engine> 
    </Service> 
</Server> 
3

I zostały eksperymentowanie z pomocą parametru serverXml dla tomcat:run bramki (http://tomcat.apache.org/maven-plugin-2/tomcat6-maven-plugin/run-mojo. html # serverXml).

Następujące server.xml wydaje się działać bez błędów, ale bez elementu Context nie ładuje aplikacji webapp. Myślę, że gdybym kopiowane mój Context elementu z src/main/webapp/META-INF/context.xml do wewnątrz elementu Host, to może działać dobrze:

<?xml version='1.0' encoding='utf-8'?> 
<Server port="-1" shutdown="SHUTDOWN"> 
    <Service name="Catalina"> 
     <Connector port="8080" protocol="HTTP/1.1" /> 
     <Engine name="Catalina" defaultHost="localhost"> 
      <Host name="localhost" appBase="webapps"> 
      </Host> 
     </Engine> 
    </Service> 
</Server> 

Aby uruchomić z tym serwerem, Mijam serverXml jako własność na linii poleceń Maven:

mvn -Dmaven.tomcat.serverXml=src/main/resources/server.xml tomcat:run 

celem może być tomcat6:run jeśli używasz wersję wtyczki, która obsługuje zarówno Tomcat 6 i 7.

7

The org.codehaus. mojo: tomcat-maven-plugin pozwoli ci i ścieżkę do pliku server.xml w sekcji konfiguracji:

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>tomcat-maven-plugin</artifactId> 
    <configuration> 
    <serverXml>path_to_server_xml_file</serverXml> 
    </configuration> 
</plugin> 
Powiązane problemy