如何使用Hibernate配置JSF Mavenized项目.在谷歌搜索时,我发现了许多与此主题相关的指南,并具有不同的实现形式.请指出有关此主题的正确指南.我只是想使用Hibernate进行简单的数据库操作. 解决方案 如果使用JPA Hibernate,则所有配置都将与其他解决方案 如果您使用的是Hibernate,而不是JPA,则需要做的就是将您的hibernate.cfg.xml文件放入proj/src/main/resources>中,然后在项目中调用new Configuration()和configuration.buildSessionFactory().有关各种选项的详细文档,请参阅您的版本 jboss的文档.
以下是关于 jsf 的编程技术问答
我有一个绑在我的index.xhtml jsf页面上的托管豆,该页面使用像这样注射的EJB: // Code inside managed bean @EJB QueryEndpointLocal queryEndpoint; public void search() { //... SearchResult result = queryEndpoint.search(query, resultFormat); //... } QueryEndPoint反过来利用了另一个名为QueryEngine的EJB: // Code inside QueryEndpoint @EJB QueryEngine queryEngine; 目前,我还有另一个EJB与QueryEngine命名QueryEngineLite非常相似.他们的区别在于,QueryEngineLite使用本地转储文件,该文件将其捆绑到企业应用程序作为资源,而QueryEngine连接
任何一个都可以列出调整JSF WebApp @的提示. 解决方案 永远不要将逻辑放入您的getter中. 他们被称为多次 应该只返回一些东西 由另一种方法填充.为了 例如,如果您要锁定下拉 一起使用A4J:支持标签 第一个具有动作属性的 加载数据 当您恢复第二个 一. 除非 您实际上想发送整个 返回服务器. 不要使用 如果您只需要一个 正常.例如不要使用 Rich:DataTable,除非您正在制作 使用其中的一些功能 超过H:DataTable. 考虑使用立即= true 您所做的元素上的属性 不需要验证避免显示 向用户的大表格. 使用分页 不要超越复杂的EL表达, 在支持bean 的Java中编码它们 jsf festpractices 性能调谐 其他解决方案 移至无状态 JSF将提供出色的性能提升.现在可以完全使用JSF.请参阅此博客&此问题.收益是您无法动态创建视图(例如,通过绑定,JSTL标签等),也不能在创建后进行操作. 无
我看到了我的大学开发的一些JSF项目,在我看来,这些项目似乎很慢.有人有同样的意见吗? 我目前正在为" Rich"客户端使用JSP+JSTL和JQUERY. 我想知道什么优势和缺点具有现代框架(JSF,检票口,挂毯. 如果使用所有这些技术的人都回答了. 对我来说也很有趣,最令人兴奋的功能使您离开JSP并使用"大型"框架(我的意思是,例如春季AOP或其他您可能会注意到的其他内容). 感谢所有评论. 解决方案 我已经使用了CGI,PHP,JSP,Struts,Spring MVC(1.2),BEA Workshop,JSF,JSF,JBOSS SEAM,SPRING MVC(2.5)(2.5)和关于小门有很多话要说. 默认情况下,您不必担心"在新标签中打开"和" Back"按钮问题. 它是基于组件的,因此您可以重新使用代码Ala swing. 利用许多标准Java,例如类型的安全奇迹. 支持诸如URL加密之类的高级安全功能. 默认情况下可集
在JSF应用程序中,参数Javax.faces.facelets_refresh_period可以用于启用/禁用XHTML文件的自动重新加载. 我目前正在研究用于生产部署的正确配置,并且不小心发现我们目前使用facelets_refresh_period = 1在生产中运行,这显然不是一个好主意. 这导致了一个问题:此参数的默认值是什么? 理想情况下,为了简单起见,我只想从我们的生产配置中省略facelets_refresh_period,并希望它将使用"安全"默认值为-1.但是,似乎并非如此,因为没有参数,似乎启用了刷新(Mojarra和Myfaces). . 我检查了JSF规格,虽然它描述了参数,但它不会给出默认值.这是规格中故意的遗漏吗? 解决方案 默认值取决于实现. 鉴于您正在使用Mojarra,可以在 com.sun.faces.config.WebConfiguration class: 768 FaceletsD
我正在尝试使用JSF中的HTMLDATATATATATATATATATATATATATITATE在JSF中动态生成表.当我给出大于25个的行数和列的数量时,某些单元格仅在IE中被填充,并且越来越慢.但是,我可以在使用Firebug调试代码时看到该值.它在Firefox和Chrome中正常工作. 这是如何引起的,我该如何解决? 解决方案 众所周知,Internet Explorer的桌面渲染器非常差.尤其是当列和表格嵌套过于热心时. 除了通过引入懒惰的加载和分页来使您的桌子变得更小之外,别无其他解决方案,一次只能显示10〜100行.如有必要的搜索过滤器.另一个好处是,它也更加用户友好.例如,Google还没有在没有过滤和分页的情况下显示怪物表中的所有数十亿个网站链接. 如果您碰巧使用PrimeFaces,请使用另请参见: 有效的JSF Pagination Update 根据注释,如果您无法更改服务器端代码,则没有其他选择.您最好的选择可能是通知EDE
遇到JSF填写我们的会议的问题.前几天我们发生了系统崩溃.将堆发送给IBM进行审查,发现我们的会议大至50m.他们在会议中发现了JSF组件,有些很大. 那么,可以进行任何调整吗?要查看的配置项目?或其他方向. 我们的系统是使用JSF和Spring构建的,用于演示层,后端是EJB,Spring和Hibernate在WebSphere 6.1上运行. 解决方案 JSF是一项有用的技术,但是您当然可以将自己悬挂. 听起来好像是,要么要夸大视图状态的大小(通过在组件上设置较大的值),要么将组件引用泄漏到其他会话状态(这是不好的).另一个潜在的罪魁祸首将是一个过多的视野(我已经看到人们可以轻松建造UI树,从而带来了很大的控制图,到处都是数据表).我知道IBM提供了丰富的文本和电子表格控件 - 我无法评论这些对状态的使用对状态大小的影响. 低悬挂的水果是在 faces-config.xml 中检查为会话范围配置的托管豆. JSF在请求之间保存了两件事: 视
我正在使用JSF 2.2 + PrimeFaces进行WebApp ...项目的增长迅速,第一次性能测试非常差(由于我对JSF生命周期的知识不足,结合了非功能性要求 - 即完全AJAX网站),然后我们可以改进一些结果,但结果仍然不如预期. (我们的时间为300至1500毫秒,具体取决于动作,想法是在500ms左右的表现,付出或接受).主要是还原视图阶段和渲染响应是消费者(在其他阶段,花费的时间毫无价值).对于某些操作,调用应用程序也需要时间(由于DB调用). 在阅读了网络上的许多文章后,有很多很棒的技巧要考虑(当然来自Stackoverflow),例如: 改进数据库查询 我们有一些复杂的问题,这些问题是通过两个冬眠条件查询来完成的,因此我们必须在这里工作. (也许使用纯SQL查询,并且在复杂的查询上使用子询问?) 永远不会在Bean的Geters上定义业务逻辑 得到它! 将适当的范围设置为豆并存储在它们上,只不过是必要的东西 我们有一个完整的Aj
我不知道它是真的,但从我阅读的内容中,我相信,JSF EL&XHTML页面没有预先编译,只是在需要时使用,而是在解析,评估,编译每个页面时间构建了视图. 我不明白为什么这样做!为什么不仅解析和编译一次,而且要部分地,某些组件的渲染可能取决于动态获取的变量,以便稍后渲染,但是为什么对页面上的所有组件延迟了这一点呢?可以预先编译并准备好使用什么最大值,为什么不仅在应用程序时不这样做呢?这不会改善页面的渲染时间吗? 解决方案 Facelets实际上能够"预编译".您可以使用上下文参数javax.faces.FACELETS_REFRESH_PERIOD来控制facelets刷新周期.您可以将其设置为-1,以便告诉JSF切勿重新编译/重新编写facelets文件,并实际保存整个sax comperied/parsed xml树(基于xhtml组成): javax.faces.FACELETS_REFRESH_PE
假设我指定了这样的outputText组件: 如果我在调用someProperty的Getter并加载页面时打印一条日志消息,请注意,每个请求都将getter多次调用(两次或三次是我的情况下发生的情况) ): DEBUG 2010-01-18 23:31:40,104 (ManagedBean.java:13) - Getting some property DEBUG 2010-01-18 23:31:40,104 (ManagedBean.java:13) - Getting some property 如果计算someProperty的值昂贵,这可能是一个问题. 我有点谷歌搜索,并认为这是一个已知问题.一个解决方法是包括一张检查,看看是否已经计算出来: private String someProperty; public String getS
我有以下情况: otlp数据库架构带有数据.数据库过程将数据泵置为具有定义的尺寸和事实表的不符合的星形智能.目标是构建Web应用程序,该应用程序可以在这些定义的数据结构上进行摘要和钻探. 我可以构建自定义的Web界面,但是我更希望将现有工具用于报告部分.结果应用程序必须用Java编写,并与基于JSF的现有解决方案集成在一起,Pentaho看起来取决于任务,但是我找不到任何地方,一个人会如何处理,或者是否可能会做到这一点. 谢谢 解决方案 正如亚当所说,如果您有OLAP,则可以使用Jpivot或更好地使用Saiku. Saiku使发展自己的前端非常容易,并且都是基于休息的.它确实带有UI,但您不必在服务器分开时使用它. 其他解决方案 当前没有JSF组件可以从Mondrian后端显示OLAP表格,但是您可以使用 jpivot "> jpivot "> ,这是JSP自定义标签库. 如果您最终创建了自己的UI,则可以使用转换,v1.0是很快就会发布.
我找到了一些有关将JSF技术与Spring Boot集成的教程,但似乎有一项相当涉及的工作,可以使Ommnifaces与Spring Boot合作.将这两个集成在一起是一个好主意吗? 解决方案 首先,Java EE和Spring是竞争框架.通常,选择一个或另一个而不是尝试混合它们是最简单的.从长远来看,它将与初学者的混乱更少,而对互操作性的烦恼更少. Java EE框架适用于Java EE容器(Wildfly,Tomee,Payara等),而弹簧框架则朝向Barebone Servlet容器(Tomcat,Jetty等). JSF虽然是Java EE框架的一部分,但最初不需要其他Java EE工件作为依赖性,因此它也可以在Bareybones Servlet容器中毫不费力地运行.仅需要JSTL作为Java EE的另一部分,这是在手动安装在Barenbones Servlet容器中相当微不足道的. 自JSF 2.0版以来,添加了可选的bean验证(JSR303)依赖项,
如果上传了几个非常大的文件,会话超时是否会发生?想象一下,我上传了一个5 GBYTE大文件,设置了一个简短的会话超时.会话超时会在流式传输时发生吗? 解决方案 是的,它可以. servlet "> servlet "> servlet规范无处禁止在主动请求期间会销毁会话.因此,您将风险冒险 ViewExpiredException 这样的上传到达bean. 如果这是您的关注,您已经有几个选择: 让上传形式不同步向服务器进行轮询,以使会话保持生命.您可以在El中使用#{session.maxInactiveInterval}以几秒钟的时间获得当前超时. 10秒的差异只是为了防止它到达几秒钟太晚,因为该页面本身也可能需要一些时间来加载所有HTML并初始化民意调查.您可以在必要时有条