草庐IT

java - 创建线程部署在 Tomcat 中的 Web 应用程序

我正在开发一个部署在Tomcat中的Web应用程序。我们在客户端使用Spring、Hibernate、GWT)。此应用程序的功能之一是在创建、更新或删除任何实体时向用户发送警报(电子邮件)。(警报可以由用户即时添加,因此涉及一些处理-决定应通过电子邮件通知哪些用户)。理想情况下,警报机制应该是异步的,并且应该影响CRUD操作的性能。我首先想到的是创建一个线程和一个阻塞队列。线程不断轮询阻塞队列以查看它是否有任何事件。但是在Web应用程序中创建线程是许多容器不鼓励的事情。有人可以建议/建议-这是正确的做法吗?或者有更好的方法来做同样的事情。如有任何指点,我们将不胜感激。提前致谢,萨钦

java - JSF 标签未呈现 - FacesServlet 可能无法正常工作?

我刚刚开始使用JSF2.0,一开始就遇到了一个问题。不解析JSF标记。下面是一些细节。希望有人能提供帮助,因为相关的SO问题都无法解决我的问题。你好.jspasd当我导航到http://localhost:8080/JSFDeneme/pages/hello.jsp时我看到了什么只有明文asd查看源代码http://localhost:8080/JSFDeneme/pages/hello.jsp和hello.jsp的内容完全一样asdweb.xmlJSFDenemeindex.htmlindex.htmindex.jspdefault.htmldefault.htmdefault.js

java - 重新访问时自动登录 JSF 应用程序,一旦登录

对于典型的最典型的面向互联网的网站,当您通过关闭选项卡(不注销)登录和离开网站时,然后在连续重新访问时,您可能不需要重新指定您的凭据或登录,您将直接登录。这一切是如何在后端发生的?如何在我的JSF2.1应用程序上启用这种机制?在Tomcat7服务器上使用JSF2.1 最佳答案 这基本上是由一个长期存在的cookie完成的。JSFAPI不提供此功能,因为它只是一个简单的基于组件的MVC框架。标准JavaEEAPI也不提供此功能。一些身份验证框架,如SpringSecurity和ApacheShiro提供此功能。如果您需要使用“普通”J

java - Tomcat 不刷新响应缓冲区

我在下面的Tomcat7上测试了HttpResponse#flushBuffer和PrintWriter#flush,但似乎响应忽略了它们而不是刷新了尽快通过网络发送内容。importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.ServletException;importjavax.servlet.annotation.WebServlet;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletReques

java - 使用 Tomcat : Providing multiple projects' dependencies? 部署 Eclipse Web 应用程序

在使用Tomcat6和Eclipse部署我的动态Web应用程序时,我无法提供我正在使用的一些第三方库(JAR文件)。请注意,我确实知道如何在Web应用程序项目“直接”依赖于那些JAR的设置中执行此操作。但是,在我的设置中,我有两个Eclipse项目:core是一个类库,比方说,它依赖于a.jar。web是网络应用程序,它依赖于核心。在web的项目设置中,在DeploymentAssembly类别中,我添加了core,所以Eclipse(或Tomcat-我'我不太确定这里的负责人是谁)正在将core.jar放入我的Web应用程序的libs目录中。问题是:当我试用Web应用程序时,当cor

java - 当作为服务器运行时,Eclipse - Tomcat - java.lang.NoClassDefFoundError : javax/servlet/ServletConfig

我整天都在为此奋斗:我有DynamicWebProject。它运作良好。但在某些时候,我决定清理项目中未使用的额外jar。清理后,我遇到了很多错误。所以我回滚了所有更改(我的意思是我重新调整了所有jar)。但我也玩过项目、Eclipse和调试配置的构建路径。不幸的是我不记得这个变化(用Path的东西)。当我在服务器上运行时,tomcat向我显示:`04.12.201216:37:43org.apache.catalina.core.ApplicationContextlogSEVERE:StandardWrapper.Throwablejava.lang.NoClassDefFound

java - Oracle 驱动程序内存泄漏 - Tomcat

我们使用的是tomcat-7.0.33。Spring3.0.1和JPA使用tomcatJNDI数据源。Oracle10g在后端使用ojdbc6.jar(最新)。当我们尝试取消部署应用程序时,某些Oracle类似乎正在泄漏。我在使用较旧的ojdbc14.jar驱动程序时看不到这一点,但我们无法使用这些驱动程序,因为我们正在迁移到需要较新驱动程序的Oracle11g。我猜这是Oracle驱动程序中的错误?我可以做些什么来清理这些资源吗?我试过关闭数据库连接池和其他东西都无济于事......不使用Tomcat的连接池会更好吗?我们宁愿让服务器连接到数据库,但如果需要,我们可以自己做...服务

Java EE 异常 : Name java:comp is not bound in this Context

我在Netbeans7.2.1中安装了JavaEE应用程序。尝试部署它(构建结束正常),我在Tomcat日志中收到错误:Causedby:javax.naming.NameNotFoundException:Namejava:compisnotboundinthisContextatorg.apache.naming.NamingContext.lookup(NamingContext.java:770)atorg.apache.naming.NamingContext.lookup(NamingContext.java:153)atjavax.naming.InitialContex

java - JDBC 驱动程序 JAR 文件应该驻留在具有数据源的 Tomcat 部署中的什么位置?

我有使用Spring、Hibernate、Tomcat7和MySql的JavaWeb应用程序。我使用Datasource进行数据库操作。我不太清楚加载jar文件(Tomcat-jdbc.jar&Mysql-connector.jar)的标准位置是什么?如果我将两个jar都保存在CATALINA_HOME/lib/或webapps/myApp/WEB-INF/lib中,它就会起作用。但是我被告知只使用来自CATALINA_HOME/lib/的Tomcat-jdbc和来自/WEB-INF/lib/的mysql-connector.jar,它给出了一个ClassNotFoundSqlDriv

java - 登录 tomcat catalina.out 的最简单方法

将日志写入tomcat/catalina.out的最简单方法是什么?我已经尝试过System.out.print()并且System.err.print()工作正常。我只是想知道除了sysout和syserr之外是否还有更好的选择? 最佳答案 importjava.util.logging.*Logger.getLogger(YourClass.class.getName()).log(Level.WARNING,e.getMessage(),e);Logger.getLogger(YourClass.class.getName()