2015-07-12 101 views
0

我在线搜索了我的问题,但许多答案都与Spring MVC相关,这些答案不符合我的期望。我正在使用Maven,我想用普通的java,而不是像Spring那样的任何框架等。如何将子项目中的源代码包包含在主项目的web.xml中

我正在尝试构建一个java动态web应用程序项目,并将项目分解为两部分SubProject子项目)和MainProject(主项目名称)(实际上主项目由5个子项目组成,但与我的问题无关,所以我简化了案例)。我想将SubProject视为MainProject的库,并且可以使用Maven构建所有项目。 SubProject不是一个动态Web应用程序项目,因此它没有部署描述符web.xml,MainProject是一个带有web.xml的动态Web应用程序项目。

现在假设我在SubProject的包com.my.package中编写了一个java过滤器MyFilter.java,并且需要在MainProject的web.xml中配置它,以便MyFilter可以为特定的url模式工作。 。出现这个问题是因为我不知道如何将子项目中的源代码包包含到web.xml中的MainProject中。

我不知道如何通过在spring.xml以下配置做,在Spring MVC中: <context:component-scan base-package="com.my.package" />
其中com.my.package是源包子项目。此外,在web.xml中,包括:
<context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/spring.xml </param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>

因为我不想使用Spring框架,我正在寻找一些方法来配置我的web.xml类似于我在spring.xml一样。有没有人有一个想法如何将源代码包(和类)包含在一个子项目中的Java Web应用程序的主项目?

回答

0

如果你做到以下几点:在pom.xml中<packaging>war</packaging>

  • 配置子项目建立一个JAR:

    • 配置MainProject建立一个战争的pom.xml <packaging>jar</packaging>
    • 添加子项目的依赖到MainProject:
    <dependencies> 
        <dependency> 
        <groupId>groupId.of.SubProject</groupId> 
        <artifactId>SubProject</artifactId> 
        <version>x.x.x</version> 
        </dependency> 
    </dependencies> 
    

    可以在MainProject的web.xml使用过滤器从子项目:

    <filter> 
        <filter-name>MyFilter</filter-name> 
        <filter-class>com.my.package.MyFilter</filter-class> 
    </filter> 
    <filter-mapping> 
        <filter-name>MyFilter</filter-name> 
        <url-pattern>/*</url-pattern> 
    </filter-mapping> 
    
  • +0

    是。我自己想清楚了,不过谢谢你。 –

    相关问题