Tag: java ee

如何在登录后正确注销Java EE 6 Web应用程序

一个非常简单的要求。 登录到Web J2EE 6应用程序后,如何让用户再次注销? 我见过的大多数(全部?)书籍和教程都展示了如何将login / loginerror页面添加到他们的应用程序中,并使用“j_security_check”方法演示安全主体/角色/领域等的使用 – 一切都很好。 但是,目前尚不清楚如何赋予用户注销权。 实际上,如何在会话超时等之后强制退出?

组件系列,组件类型和渲染器类型之间的关系是什么?

当我在JSF中学习自定义组件开发时,我对组件系列,组件类型和渲染器类型之间的关系感到困惑。 例如,我注册了一个渲染器和一个自定义组件,如下所示。 faces-config.xml : study.faces.Div javax.faces.component.UIPanel HTML_BASIC javax.faces.Panel study.faces.DivRenderer com.study.ui.DivRenderer 我还在my.taglib.xml文件中注册了一个新标记,如下所示: div study.faces.Div study.faces.DivRenderer 这种配置非常有效。 但是,我不明白为什么在渲染器注册时需要行javax.faces.Panel 。 在my.taglib.xml ,组件和渲染器已连接,恕我直言,它应该足以为组件选择合适的渲染器。 附加参数的用途是什么? 我做了谷歌研究,我得到的所有答案都说“一个渲染器可以用来渲染多个组件。这些组件属于一个系列”。 但这些陈述并没有清楚我的困惑。 有人可以解释组件类型,组件系列和渲染器选择策略之间的关系吗? (希望有一个很好的例子。)

日期的hibernate标准

在oracle我有格式的日期 2011年4月17日19:20:23.707000000 我想检索17-04-2011的所有订单。 SimpleDateFormat formatter = new SimpleDateFormat(“dd-MM-YYYY”); String myDate = “17-04-2011”; Date date = formatter.parse(myDate); Criteria criteria = session.createCriteria(Order.class); Criterion restrictDate = Restrictions.like(“orderDate”,date); 但它给我带来空洞的结果:

通过JSP显示BLOB(图像)

我有一个代码来显示员工的图表。 数据(名称,电话,照片等)存储在SQLServer中并通过JSP显示。 除了图像.jpg(存储在IMAGE = BLOB列中)之外,显示数据是可以的。 顺便说一句,我已经显示了图像(参见下面的代码),但我不知道如何将它放在.css中定义的区域(参见下面的代码),因为图像通过了resultSet在浏览器的整个页面中加载。 有谁知道我怎么能’构图’图像? <% Connection con = FactoryConnection_SQL_SERVER.getConnection("empCHART"); Statement stSuper = con.createStatement(); Statement stSetor = con.createStatement(); Blob image = null; byte[] imgData = null; ResultSet rsSuper = stSuper.executeQuery("SELECT * FROM funChart WHERE dept = 'myDept'"); if (rsSuper.next()) { image = rsSuper.getBlob(12); imgData = image.getBytes(1, (int) image.length()); response.setContentType("image/gif"); OutputStream o = response.getOutputStream(); […]

您建议使用哪种压缩(GZIP最受欢迎)servletfilter?

我正在寻找一个GZIP servletfilter,用于高容量的web应用程序。 我不想使用特定于容器的选项。 需求 能够压缩响应有效负载(XML) 更快 适用于大批量应用的生产中 应正确设置适当的Content-Encoding 便携式跨容器 可选择解压缩请求 谢谢。

在没有请求的情况下从tomcat获取服务器端口号

是否有任何Tomcat API或配置可以告诉应用程序(可能在启动时),它运行的端口没有请求? 想象一下,有两个Web应用程序在同一个Tomcat中运行,其中一个需要从另一个调用Web服务。 我们不希望请求离开Tomcat(如果您使用Apache服务器名称或绝对URL,请求将出去并再次返回并且它可以转到任何实例)并返回。为此,我知道机器名称但无法获取端口号。 我知道我可以硬编码这些信息,但我不想这样做,因为我希望我的war文件与应用程序服务器无关。 我知道如果我们有HTTPServletRequest,我们可以找到它 这仅适用于Tomcat 6,不适用于Tomcat 7

Eclipse Web项目依赖项

这个问题是关于Eclipse开发的,我试图在Eclipse中创建一个Web应用程序,问题是我没有将依赖关系jar放到已部署的存档中。 我创建了一个新的动态Web项目并将其链接到另一个Java项目。 Java项目引用了一些第三方jar(例如Spring jar),但出于某些原因,在发布Web项目时,我只获得了战争的lib目录中的Java项目jar,没有Java项目依赖项(例如Spring)。 换句话说,我有项目A(Web项目),它依赖于项目B(Java项目),项目B依赖于Spring jar。 当我将Web项目作为战争发布到JBoss时,只将项目B打包到jar中(没有弹簧jar) 我知道我可以用ant做到这一点,我甚至有这样的build.xml来构建整个应用程序,但我认为eclipse也可以为我执行打包任务。 我将Java项目添加到Web项目中的Java EE模块依赖项中。 我应该在Java项目构建路径属性中使用导出选项吗? 我是否应该将Java项目的依赖项添加到Web项目中? 我究竟做错了什么? 编辑 :我正在使用Eclipse 3.5.1

如何引用JAR文件中提供的JSF托管bean?

我有一个具有以下结构的WAR文件: JSF托管bean BusinessObjectTypeListController位于/WEB-INF/lib中的commons-web-1.0.jar中,并在BusinessObjectTypeListView.xhtml引用。 当我运行我的Web应用程序并调用该视图时,出现以下错误: javax.servlet.ServletException:/view/common/businessObjectTypeListView.xhtml @ 34,94 listener =“#{businessObjectTypeListController.selectData}”:目标无法访问,标识符’businessObjectTypeListController’已解析为null 为什么找不到控制器类? 它应该在classpath中,是吗?

Tomcat vs Weblogic JNDI Lookup

我们使用的Weblogic服务器已配置为允许JNDI数据源名称,如“appds”。 对于开发(localhost),我们可能正在运行Tomcat,并且当在server.xml的部分中声明时,Tomcat将在JNDI树中的“java:comp / env / jdbc / *”上挂起JNDI数据源。 问题:在Weblogic中,JNDI查找是“appds”,而在Tomcat中,似乎我必须提供正式的“java:comp / env / jdbc / appds”。 我担心Tomcat版本是一个隐含的标准,但不幸的是,我无法更改Weblogic的配置…所以这意味着我们最终会得到两个不同的spring配置文件(我们使用的是spring 2.5)来促进不同的环境。 有没有一种优雅的方式来解决这个问题。 我可以直接在Tomcat中查看JNDI名称吗? spring可以在这两个地方取名吗? 谷歌搜索或建议会很棒。

在启动时(在JBoss上)急切/自动加载EJB / load EJB

EJB似乎被懒惰地加载 – 无论何时访问。 但是,我想急切地初始化它们 – 即每当容器启动时。 这是如何实现的(特别是在JBoss中) 这个主题提供了一些提示,但并不十分令人满意。