2016-11-18 28 views
1

Tomcat ServerでSpring MVCプロジェクトを使用しています。アプリケーションを実行するたびに、サーバーコンテキストルートが変更されます。 固定コンテキストルートを設定するにはどうすればよいですか?Spring MVCプロジェクトでコンテキストルートを設定する方法

マイプロジェクト名は、次のとおり

<context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value>/WEB-INF/spring/root-context.xml</param-value> 
</context-param> 
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
</listener> 
<servlet> 
    <servlet-name>appServlet</servlet-name> 
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    <init-param> 
     <param-name>contextConfigLocation</param-name> 
     <param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

<servlet-mapping> 
    <servlet-name>appServlet</servlet-name> 
    <url-pattern>/</url-pattern> 
</servlet-mapping> 

サーブレットコンテキスト:DemoApplication、 最初にこのコンテキスト・ルートは、経路があることがある http://localhost:8080/DemoApplication

二度目、 http://localhost:8080/Controller のWeb.xmlに配備されます。 xml:

<annotation-driven /> 
<resources mapping="/resources/**" location="/resources/" /> 
<beans:bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
    <beans:property name="prefix" value="/WEB-INF/views/" /> 
    <beans:property name="suffix" value=".jsp" /> 
</beans:bean> 
<beans:bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> 
    <beans:property name="driverClassName" value="com.mysql.jdbc.Driver" /> 
    <beans:property name="url" 
     value="jdbc:mysql://localhost:3306/mydp" /> 
    <beans:property name="username" value="root" /> 
    <beans:property name="password" value="root" /> 
</beans:bean> 
<beans:bean id="hibernate4AnnotatedSessionFactory" 
    class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> 
    <beans:property name="dataSource" ref="dataSource" /> 
    <beans:property name="annotatedClasses"> 
     <beans:list> 
      <beans:value>com.Aquatech.Model.Area</beans:value> 
     </beans:list> 
    </beans:property> 
    <beans:property name="hibernateProperties"> 
     <beans:props> 
      <beans:prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect 
      </beans:prop> 
      <beans:prop key="hibernate.show_sql">false</beans:prop> 
     </beans:props> 
    </beans:property> 
</beans:bean> 
<beans:bean id="GenericDao" class="com.Aquatech.Dao.Impl.GenericDaoImpl"> 
<beans:property name="sessionFactory" ref="hibernate4AnnotatedSessionFactory"></beans:property> 
</beans:bean> 
<beans:bean id="GenericserviceDao" class="com.Aquatech.ServiceDao.Impl.GenericServiceDaoImpl"> 
<beans:property name="genericDao" ref="GenericDao"></beans:property> 
</beans:bean> 
<interceptors> 
    <beans:bean id="webContentInterceptor"  class="org.springframework.web.servlet.mvc.WebContentInterceptor"> 
     <beans:property name="cacheSeconds" value="0" /> 
     <beans:property name="useExpiresHeader" value="true" /> 
     <beans:property name="useCacheControlHeader" value="true" /> 
     <beans:property name="useCacheControlNoStore" value="true" /> 
    </beans:bean> 
</interceptors> 
<context:component-scan base-package="com.Aquatech.Controller" /> 

+1

をweb.xml、アプリケーションコンテキストXMLを提供してくださいSpring MVCから – ScanQR

+0

Tomcat 7.0で[HOWTOのWebアプリケーションのコンテキストパスを設定する]の可能な複製(http://stackoverflow.com/questions/7276989/howto-set-the-context-path-of-a-web- application-in-tomcat-7-0) – developer

+0

@vilaあなたのweb.xmlはうまくいくようです。また、Tomcatの場合、デフォルトのコンテキストルートはwar nameです。 – ScanQR

答えて

1

私のプロジェクト名は次のとおりです。DemoApplication、最初にこのコンテキストルートは http://localhost:8080/Controller、それはパスがあり、http://localhost:8080/DemoApplication第二 時間が配備されていますか?

あなたは以下のいずれかのオプションを達成することができますURLを修正するために、Webアプリケーション(DemoApplication)、のためのルートコンテキスト を修正する必要があり

(1)root contextを設定します。 Tomcatの中DemoApplicationとしてhere

を説明するように、あなたがMavenを使用している場合(2)、あなたはのpom.xmlに以下のタグを追加することで、戦争の名を修正することができます:

<build> 
    <finalName>DemoApplication</finalName> 
</build> 

あなたは、上記のオプションのいずれかで行われていたら、あなたは以下のURLで常にアプリケーションコントローラにアクセスできるようにする必要があります

http://localhost:8080/DemoApplication/Controller

関連する問題