标签: spring-webflow

Spring Webflow最佳实践

我有一个java web应用程序,它使用spring webflow作为框架.我在处理普通流xml上的数据时遇到问题.当处理变得更复杂时,我发现很难使用web流的flow xml来实现.我正在考虑使用控制器来执行这些操作.我该怎么做呢.不知道在Web流程中使用控制器.从控制器我可以跳转到流xml继续处理?

我的问题的一个例子是提交表格.这是场景.我有一个Users表和权限表.我还有一个User类代表我在这里使用Hibernate的tablebec.在我的注册页面中,我有用户名,密码和权限(不是用户类的字段)字段.我使用spring webflow绑定将此表单绑定到我的User对象.我的问题是我无法绑定权限字段,因为它在我的User类中不存在.我需要创建一个代表我的表单的bean吗?我需要在Users表上添加用户名和密码,在另一个表Authority中添加权限.我在哪里为User对象和Authority对象进行初始化,或者在哪里设置registerFormBean中的值到我的POJO?我认为这不是一个好方法,否则会使我的流xml变得复杂

java spring spring-mvc spring-webflow

6
推荐指数
1
解决办法
3566
查看次数

在Spring WebFlow应用程序中防止跨站点请求伪造

我正在寻找一种(希望是直截了当的)方法来为Spring WebFlow 2上构建的应用程序添加CSRF保护.

一种可以很好地迁移到Spring WebFlow 3(发布时)的方法是首选.

security csrf spring-security spring-webflow

6
推荐指数
1
解决办法
6285
查看次数

如何在StringToDate中更改默认格式?Spring WebFlow

Spring WebFlow中的默认日期格式为"yyyy-MM-dd".

如何更改为其他格式?"dd.mm.yyyy"例如.

java spring-webflow

6
推荐指数
1
解决办法
3252
查看次数

在Spring WebFlow中优雅地处理过期的HttpSession

(来自SpringSource论坛.)

HttpSession已经过期并且用户在流程中重新提交页面时,他/她被发送回流程的开头.我想要添加到此行为的所有内容都是一条消息,解释了它发生的原因."你没有活动,所以你已经重新启动......"

最简单/最佳实践方法是什么?

spring-webflow

6
推荐指数
1
解决办法
3197
查看次数

如何将值添加到Spring SecurityContextHolder中

我有登录参数

1.userName

2.password

3.companyId
Run Code Online (Sandbox Code Playgroud)

我使用以下代码获得了用户名和密码

 Authentication auth = SecurityContextHolder.getContext().getAuthentication();

 String name = auth.getName();

 String pwd = auth.getCredentials();

 String companyId= ???//How can i set and then get company Id here.
Run Code Online (Sandbox Code Playgroud)

我的问题是如何使用SecurityContextHolder获得额外的登录参数(companyId)?

提取类可能不是spring控制器.这就是我使用SecurityContextHolder而不是HttpSession的原因.

谢谢,

spring spring-mvc spring-security spring-webflow

6
推荐指数
1
解决办法
8822
查看次数

Webflow与Angular或两者兼而有之?

我们正在使用以下技术堆栈开发企业应用程序:

  • Websphere Application Server
  • Spring(Webflow(Session in View模式),JPA(Hibernate),Core)
  • DB2 osZ
  • 前端(JSP渲染HTML5(CSS 2.0),Ajax与webflow结合,JQuery)
  • 通过使用webflow支持子流来组合多个单页设计

开发方法 - 领域驱动/组件驱动应用程序 - 测试驱动开发

现状 我们的域模型具有非常深的域类层次结构,因此我们决定使用webflow来允许子流中的深层导航.我们正在使用"视图模式中的会话",因为有许多屏幕反映了域模型的类层次结构.这非常有效,因为后端管理会话范围的数据为前端.

我们接下来要做什么?

  • 单页设计
  • 控制会话中的用户数据
  • 跨屏幕控制用户数据
  • 在一个用户会话中支持多个浏览器实例
  • 希望能够与后端(Enterprise Java/Spring)通信以检索数据并保持不变
  • 支持更多最先进的用户体验

技术堆栈

  • Websphere Application Server
  • Spring(Webflow(Session in View模式),JPA(Hibernate),Core)
  • DB2 osZ
  • 前端(Angular,JQuery,Bootstrap 3)

所以内部的讨论是如何整合Angular的?

  • 我们应该放弃Webflow并使用Angular解决所有问题吗?
  • 混合是否有意义?

我们将以下图表作为参考:http: //vschart.com/compare/angularjs/vs/spring-framework

我们知道两个框架能够做什么,并知道如何使它们工作.我们对其他团队如何整合Angular的经验感兴趣?有人曾经混合Webflow和Angular吗?我们有兴趣看到一些最佳实践,以及团队如何转变为框架或保持两者?

谢谢你的投入,安德鲁

java spring-webflow angularjs

6
推荐指数
1
解决办法
4358
查看次数

如何伪造验证错误?

我正在使用Grails Webflow插件.以下是我正在使用的域对象:

class Foo implements Serializable {
    String fooProp1,
           fooProp2

    static constraints = {
        fooProp2 nullable: false
    }
}

class Bar implements Serializable {
    Foo fooObject

    static constraints = {
        fooObject nullable: false
    }
}
Run Code Online (Sandbox Code Playgroud)

在webflow中的某个点上,我需要确保fooObject.fooProp1不为null.如果是,我想抛出一个错误并强制用户为它提供一个值.我尝试使用validate()来执行此操作(在Bar和Foo对象上),但由于fooProp1具有nullable:true属性,因此它会通过验证.有任何想法吗?

grails spring-webflow grails-domain-class

5
推荐指数
1
解决办法
4305
查看次数

无法找到元素'flow'的Spring NamespaceHandler

我正在使用SpringSource Tool Suite开发一个spring webflow(2.0.7)项目.我正在尝试设置基本流程.

我的someflow.xml看起来像这样:

    <flow xmlns="http://www.springframework.org/schema/webflow"  
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://www.springframework.org/schema/webflow
                              http://www.springframework.org/schema/webflow/spring-webflow-2.0.xsd">

             <!- view-state declarations -->
    </flow>
Run Code Online (Sandbox Code Playgroud)

在STS工具(eclipse上的Spring IDE)中,我在流schemaLocation附近看到一条警告消息:

无法为模式名称空间'http:// www.springframework.org/schema/webflow'的元素'flow'找到Spring NamespaceHandler

然后当tomcat启动时,我收到错误

org.springframework.beans.factory.parsing.BeanDefinitionParsingException:配置问题:无法找到XML架构命名空间的Spring NamespaceHandler [ http://www.springframework.org/schema/webflow] 攻击资源:ServletContext资源[/ WEB-INF /流/ someflow.xml]

  • 我google了一段时间,一些帖子表明问题是spring-webflow jar不在类路径中.在我的例子中,springsource工具创建了模板,所有的jar都到位了.我也手动检查了它们.所以这不是问题

  • 这篇文章http://forum.springsource.org/archive/index.php/t-49098.html中的一条建议是拼接罐子!这不是一个解决方案,但我试图看看它是否修复了它.但不是.

现在被困......其他人是否面临这个问题?

spring spring-webflow spring-webflow-2

5
推荐指数
1
解决办法
1338
查看次数

Spring Webflow,从任何子流返回主流

我正试图在弹簧中返回我的主要流程,只需单击一个按钮即可从我的任何子流程返回.

当我使用<end-state>它时,只需转到上一个流程,这也是应用程序中的子流程.

有任何想法吗?

spring-webflow

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

(Spring/Hibernate)初始化子对象策略

我应该绑定到一个复杂对象的形式,装载这种形式我必须初始化所有的孩子,只有有很多的方法,对象之前包裹了很多孩子,每次new报表和调用一个setter方法,我要对许多表单和其他复杂对象重复此方案

有没有比initializeEmployee方法更好的策略?

例如:

@Entity
public class Employee {
    Integer Id;
    Contract contract;
    Name name;
    List<Certificate> list;
    // getter and setters
}

@Entity
public class Contract {
    String telephoneNum;
    String email;
    Address address;
    // getter and setters
}

@Entity
public class Address {
    String streetName;
    String streetNum;
    String city;
}

public class Name {
    String fName;
    String mName;
    String lName;
    // getter and setters
}

// And another class for certificates

public initializeEmployee() {
    Employee …
Run Code Online (Sandbox Code Playgroud)

java spring hibernate spring-webflow

5
推荐指数
1
解决办法
1398
查看次数