Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 已切换到Eclipse Juno,未找到筛选器类_Java_Eclipse_Classpath_Web.xml_Eclipse Juno - Fatal编程技术网

Java 已切换到Eclipse Juno,未找到筛选器类

Java 已切换到Eclipse Juno,未找到筛选器类,java,eclipse,classpath,web.xml,eclipse-juno,Java,Eclipse,Classpath,Web.xml,Eclipse Juno,我试图在Springsource工具套件(基于EclipseJuno)中的服务器上运行一个项目。它过去在早期版本的Eclipse中运行。这是一个maven项目,它可以从命令行很好地构建 我现在看到的问题是,它找不到web.xml中引用的筛选器类,尽管在Eclipse的早期版本中,它在查找此类时没有问题。web.xmlfilter子句如下所示: <filter> <filter-name>hibernateFilter</filter-name>

我试图在Springsource工具套件(基于EclipseJuno)中的服务器上运行一个项目。它过去在早期版本的Eclipse中运行。这是一个maven项目,它可以从命令行很好地构建

我现在看到的问题是,它找不到
web.xml
中引用的筛选器类,尽管在Eclipse的早期版本中,它在查找此类时没有问题。
web.xml
filter子句如下所示:

<filter>
    <filter-name>hibernateFilter</filter-name>
    <filter-class>com.foo.bar.dao.hibernate.HibernateSessionFilter</filter-class>
    <init-param>
        <param-name>sessionFactoryBeanName</param-name>
        <param-value>sessionFactory</param-value>
    </init-param>
</filter>
当我运行
jar tf app.war | grep HibernateSessionFilter
时,类在war文件中:

$ jar tf imagewar.war | grep HibernateSessionFilter
WEB-INF/classes/com/foo/bar/dao/hibernate/HibernateSessionFilter.class
也许它不属于WEB-INF/类


正如我所说,该应用程序用于在内部服务器中构建和运行。我需要用Juno做什么来告诉它我的应用程序的类在哪里?

如果通过Eclipse部署,你应该检查Eclipse是否正确部署了你的应用程序-Eclipse没有使用WAR文件进行部署,而是将必要的文件直接复制到appservers webapp位置

有时,尽管Eclipse会弄糟这一点,但WTP在部署时存在已知的bug

你应该检查一下房间 .metadata/.plugins/org.eclipse.wst.server.core- 文件夹及其子文件夹(每个子文件夹代表一个已注册的服务器实例)

有时,您需要在webapps中完全删除部署,并在Eclipse中重新部署。这很神奇,但很管用

有一件事你不应该检查:你的WAR文件:Eclipse不是从WAR文件部署的。请先检查已部署的类


最后一点提示:如果您使用m2e for Maven,您应该安装m2e wtp插件以支持wtp。

如果您通过Eclipse部署,您应该检查Eclipse是否正确部署了您的应用程序-Eclipse没有使用WAR文件部署,而是将必要的文件直接复制到appservers webapp位置

有时,尽管Eclipse会弄糟这一点,但WTP在部署时存在已知的bug

你应该检查一下房间 .metadata/.plugins/org.eclipse.wst.server.core- 文件夹及其子文件夹(每个子文件夹代表一个已注册的服务器实例)

有时,您需要在webapps中完全删除部署,并在Eclipse中重新部署。这很神奇,但很管用

有一件事你不应该检查:你的WAR文件:Eclipse不是从WAR文件部署的。请先检查已部署的类


最后一点提示:如果您使用m2e for Maven,您应该安装m2e wtp插件以支持wtp。

我不明白Eclipse与此问题有什么关系。您成功地生成了一个war文件(所以关于Eclipse的一切都很好),但是当您将这个war文件部署到Tomcat时,会出现一个异常,对吗?所以问题是war文件或web.xml的问题,对吗?war文件中的HibernateSessionFilter.class文件在哪里?有什么想法或线索吗?Eclipse有一个服务器选项卡。它可以使您在Tomcat(或其他服务器)中轻松部署和测试webapp。唯一改变的是Eclipse的版本;我现在用朱诺。在这个服务器选项卡中,war文件不再正常启动。当我通过命令行(mvn包)构建应用程序时,war文件与以前一样是正确的,因为源代码没有更改。这个类在war文件中,正如我在问题解释中所说的那样。@VonC,我不认为这个问题解决了这个问题。请注意,我试图加载的类是我自己的。它只是碰巧重写了一个与Hibernate相关的类。无论出于何种原因,Tomcat都无法再看到已编译的类文件。在您的问题中,您提到它找不到com.foo.bar.dao.hibernate.HibernateSessionFilter,但已编译的jar不包含该类,它包含com.sodapopsoftware.imagewar.dao.hibernate.HibernateSessionFilter。这些应该是相同的吗?我不明白Eclipse与这个问题有什么关系。您成功地生成了一个war文件(所以关于Eclipse的一切都很好),但是当您将这个war文件部署到Tomcat时,会出现一个异常,对吗?所以问题是war文件或web.xml的问题,对吗?war文件中的HibernateSessionFilter.class文件在哪里?有什么想法或线索吗?Eclipse有一个服务器选项卡。它可以使您在Tomcat(或其他服务器)中轻松部署和测试webapp。唯一改变的是Eclipse的版本;我现在用朱诺。在这个服务器选项卡中,war文件不再正常启动。当我通过命令行(mvn包)构建应用程序时,war文件与以前一样是正确的,因为源代码没有更改。这个类在war文件中,正如我在问题解释中所说的那样。@VonC,我不认为这个问题解决了这个问题。请注意,我试图加载的类是我自己的。它只是碰巧重写了一个与Hibernate相关的类。无论出于何种原因,Tomcat都无法再看到已编译的类文件。在您的问题中,您提到它找不到com.foo.bar.dao.hibernate.HibernateSessionFilter,但已编译的jar不包含该类,它包含com.sodapopsoftware.imagewar.dao.hibernate.HibernateSessionFilter。这些应该是一样的吗?你肯定把整个战争都搞定了,而不是战争。不过,我在项目的构建和启动方面仍然有很多困难。似乎您必须告诉Eclipse更多关于文件在Juno中的位置的信息。以前的版本我刚刚导入了Maven项目和boom,它将在服务器选项卡中启动。没有混乱,没有大惊小怪。你肯定把整个战争都搞定了,而不是战争。不过,我在项目的构建和启动方面仍然有很多困难。似乎您必须告诉Eclipse更多关于文件在Juno中的位置的信息。以前的版本我刚刚导入了Maven项目和boom,它将在服务器选项卡中启动。没有混乱,没有大惊小怪。
$ jar tf imagewar.war | grep HibernateSessionFilter
WEB-INF/classes/com/foo/bar/dao/hibernate/HibernateSessionFilter.class