小编Seb*_*mba的帖子

现代HTML/CSS/JS布局以及Java后端

介绍

我基本上来自开发团队的两个方面.我开始使用PHP构建Web应用程序.这样,我必须手工实施一切.表单,图形元素,所有内容如何捆绑在一起(即单击按钮时会发生什么).

另一方面,前段时间我进入了Java Web世界,即JSF.在我看来,这是构建"严肃"应用程序的好方法.(为什么我这么认为,请阅读下文)

问题

我想构建一个Web应用程序,它由一个很好的和可用的前端组成,它是按照我的规范设计的(基本上尽可能地将HTML和图形布局作为水平原型 - 然后制作一个完整的webapp它).但另一方面,我想用Java做所有的业务逻辑,因为它有许多不错的框架--Hibernate,Morphia,Lombok,Dozer,仅举几例,我遇到并爱上了.

我可以自己用JSF构建前端,但我仍然认为,我太有限了,因为我必须使用只能定制到一定数量的内置组件.如果我想使用自己的设计模式和UI元素和行为但仍希望它们与Java"后端"一起工作,该怎么办?

实现目标的"最佳"工具选择是什么?选择不同的网络框架,如Wicket或类似?

我的想法:用Java构建一个Web应用程序,它理解好旧的GET命令并将其转换为Java方法.排序RESTful服务的-虽然我不是做一个伟大的球迷在前端REST风格的-除非你告诉我,这很好,可靠.

java grails web-applications

4
推荐指数
1
解决办法
1151
查看次数

@Named的行为与@ManagedBean不同

我目前正在将一个项目从JBoss 4.2.2迁移到JBoss 6.0.0,我还在使用CDI添加依赖注入,并从JSF 1.2迁移到JSF 2.0.我将一个beans.xml文件添加到ejb-package以及war-package中.

现在我有一个使用托管bean的xhtml页面LoginBean.java.已经在faces-config.xml中配置了bean,如下所示:

<managed-bean>
    <description>Sample description</description>
    <managed-bean-name>loginBean</managed-bean-name>
    <managed-bean-class>com.sample.managedbeans.LoginBean</managed-bean-class>
    <managed-bean-scope>session</managed-bean-scope>
</managed-bean>
Run Code Online (Sandbox Code Playgroud)

所以,首先我删除了上面的配置并添加@ManagedBean @SessionScoped到类本身.因为我想CDI添加到项目中,我改变了@ManagedBean@Named(与质疑2930889).

现在,当我提交相应xhtml的表单时,字段usernamepassword(在JSP中使用#{loginBean.username})为null.当我改回来时@ManagedBean,它工作正常.

我在这里错过了什么吗?

亲切的问候,塞巴斯蒂安

java jsf cdi

2
推荐指数
1
解决办法
517
查看次数

用CDI机制替换基于工厂的对象创建

我想向我们的项目介绍CDI(Weld),现在手动构建的对象遇到了一些麻烦.

所以我们有一些实现IReport接口的类,它有一个应该注入的字段.因为所有这些类是由产生这是在运行时零ReportFactory一类ReportController.

private Map<String,Object> generateReport(ReportInfo ri, ...) {
// some input validation
    IReport report = ReportControllerFactory.getReportInstance( ri.getClassName() );
// ...
}
Run Code Online (Sandbox Code Playgroud)

我知道我可以将@Produces注释与另一个自定义注释一起使用ReportControllerFactory,但是如何一个方法中使用@Injectfor只能在完成一些验证之后创建的变量?我将如何提交参数?构造时对象是未知的.ri.getClassName()riReportController

非常感谢你!

亲切的问候,塞巴斯蒂安

编辑于2011年7月8日(10:00):

ReportFactory类:

public static IReport getReportInstance( String className ) throws ReportException {

    IReport report = null;

    try {
        Class<?> clazz = Class.forName( className );
        report = (IReport) clazz.newInstance();
    }
    catch ( Exception e ) { … }        

    return report; …
Run Code Online (Sandbox Code Playgroud)

java factory factory-pattern cdi jboss-weld

2
推荐指数
2
解决办法
1万
查看次数

如何检查轨道上红宝石的大于和小于条件'

我想查看下面的内容:

if params[:hidval] > "0"
OR
if !params[:hidval] < "1"
Run Code Online (Sandbox Code Playgroud)

但它给了我错误如下:

undefined method `>' for nil:NilClass
Run Code Online (Sandbox Code Playgroud)

如何检查轨道上红宝石的上述条件?

ruby-on-rails

-1
推荐指数
2
解决办法
5279
查看次数