小编And*_*ios的帖子

ECB模式 - 什么是真正的边界?

我刚看过Bob叔叔关于架构软件的演讲:

http://www.cleancoders.com/codecast/clean-code-episode-7/show

他谈到了ECB模式(实体 - 控制器 - 边界)

他坚持认为所有软件必须是主要的,尽管整个用例.

实际上,他重复了很多次关于工具,框架等的决定......必须推迟.

我对"边界"一词很感兴趣,所以我发现了这个解释:

http://process.osellus.com/sites/wiki/OpenUP%20DSDM/Wiki%20Pages/Guidance%20-%20Entity-Control-Boundary%20Pattern.aspx

在这里,我们看到边界与每个传递机制相关,如Web机制的形式(MarketingCampaignForm)等......

所以我的问题是:

boudaries必须知道将使用的交付机制的类型,并与Bob叔叔的观点相矛盾吗?

或者它们必须是简单的POJO代表简单的数据结构,它将在内部系统和交付机制之间共享; 并包含来自用户的输入和内部系统中控制器的输出?

java architecture design-patterns ecb-pattern

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

如何将对象从JSP表单传递到Struts2中的Action类而不将所有表单字段定义为类属性?

为了使问题清楚,我举了一个例子:

  1. 考虑theSubscriber下面定义的形式first.jsp:

    <s:form id="theSubscriber" name="theSubscriber" method="post" action="next.action">
        <s:bean name="my.hibernate.actors.Subscriber" var="user">
            <s:hidden name="id" key="id" value="%{user.id}"  />
            <s:textfield id="subscriberForename" name="forename"
                        key="forename" value="%{user.forename}" label="Forename" />
            <s:textfield id="subscriberSurname" name="surname" 
                        key="surname" value="%{user.surname}" label="Surname" />
        </s:bean>
    </s:form>
    
    Run Code Online (Sandbox Code Playgroud)
  2. 考虑next.action的以下动作类

    public class NextAction extends ActionSupport {
    
        private Subscriber user = new Subscriber();
    
        private String forename;
    
        public String getForename() {
            return forename;
        }        
        public void setForename(String forename) {
            this.forename = forename;
        }
    
        public ManageSubscriber() {
            // TODO Auto-generated constructor stub
        }
    
        public ManageSubscriber(Subscriber user) { …
    Run Code Online (Sandbox Code Playgroud)

java jsp struts struts2 ognl

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

Struts 2 s:选择标签动态ID

我在JSP页面中有多个不同类型的字段和一个按钮.这些字段是根据从我创建的元数据表中获取的信息生成的.

由于我不知道有多少和哪种类型的领域存在,我给id他们动态.我在JSP中使用Struts 2标记.

问题在于<s:select>标签:当我在id属性中给出scriplet时,它会显示以下错误:

org.apache.jasper.JasperException:/success.jsp(83,12)引用符号

<s:if test="%{#masterColDO.controlType=='dropdown'}">
    <s:select styleClass="login-textbox" 
                   style="width:130px"  
                    list="#masterColDO.validation"     
                    name="chngdColumnValues" 
                      id=<%="columnId" + count%> />
</s:if> 
<s:else>
    <input type=<s:property value="#masterColDO.controlType" /> 
          class="login-textbox " 
           name="chngdColumnValues" 
             id=<%="columnId" + count%> />
</s:else>
Run Code Online (Sandbox Code Playgroud)

Javascript如下:

var addUpdateBtnId = document.getElementById('addUpdateBtnId');
addUpdateBtnId.value='Update';
addUpdateBtnId.onclick = function() {
    onClickUpdateBtn(rowIndex);
};
var selectedUpdateRow = xmlhttp.responseText.split(",");
for(var i = 0; i < selectedUpdateRow.length; i++){
    var columnElementId = "columnId"+i;
    document.getElementById(columnElementId).value = selectedUpdateRow[i];
}
document.getElementById("columnId"+(primaryKeyPos-1)).readOnly = true;
Run Code Online (Sandbox Code Playgroud)

javascript java jsp struts2 ognl

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

在页面执行后运行的Struts 2拦截器?

我正在使用Struts 2.使用拦截器,我在每个页面执行开始时创建一个数据库连接.

因此,例如,如果用户转到"myAction.do",它将创建数据库连接,然后调用myAction.do方法.

我现在正在寻找的是拦截器或在页面执行后自动调用方法的任何其他方式,它将关闭数据库连接.

那可能吗?

java struts2 interceptor

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

Bootstrap单选按钮:无线电圆圈移除

我想在我的网站上使用Bootstrap.我有单选按钮,我试图使用bootstrap中的"按钮".

<td style="margin-bottom:0px; padding-bottom: 0px;font-size=12px;vertical-align:bottom;">
    <div class="btn-group" data-toggle="buttons" id="topButtonDiv" >
        <button type="button" class="btn btn-primary">Home
        <input type="radio" id="radio1" ></button>
        <button type="button" class="btn btn-primary">Home1
        <input type="radio" id="radio2" > </button>
        <button type="button" class="btn btn-primary">Home2
        <input  type="radio" id="radio7"> </button>                
     </div>
</td>
Run Code Online (Sandbox Code Playgroud)

我面临的问题是,我仍然看到单选按钮中的圆圈,在Bootstrap示例中,我看到没有这样的圆圈存在.

http://getbootstrap.com/javascript/#buttons-usage

你能让我知道我在这里缺少什么吗?

html twitter-bootstrap

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

意外异常在'类xxx上设置了'xxx':错误设置表达式'xxx',其值为['x',]

我将一些参数传递给ModelDriven<Transporter>通过查询字符串实现的动作类.

<s:form namespace="/admin_side" action="Test" id="dataForm" name="dataForm">
    <s:url id="editURL" action="EditTest" escapeAmp="false">
        <s:param name="transporterId" value="1"/>
        <s:param name="transporterName" value="'DHL'"/>
    </s:url>
    <s:a href="%{editURL}">Click</s:a>
</s:form>
Run Code Online (Sandbox Code Playgroud)

动作类如下.

@Namespace("/admin_side")
@ResultPath("/WEB-INF/content")
@ParentPackage(value = "struts-default")
public final class TestAction extends ActionSupport 
                           implements Serializable, Preparable, ModelDriven<Transporter>
{
    private static final long serialVersionUID = 1L;
    private Transporter transporter = new Transporter();

    @Action(value = "Test",
    results = {
        @Result(name = ActionSupport.SUCCESS, location = "Test.jsp"),
        @Result(name = ActionSupport.INPUT, location = "Test.jsp")},
    interceptorRefs = {
        @InterceptorRef(value = "paramsPrepareParamsStack", 
                 params = {"params.acceptParamNames", "transporterId, …
Run Code Online (Sandbox Code Playgroud)

java model-driven struts2 interceptorstack struts2-interceptors

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

JPA - 以编程方式通过序列递增数字字段

我有一个JPA 2 Web应用程序(Struts 2,Hibernate 4仅作为JPA实现).

当前的要求是将(非id)数字顺序字段(仅对某些行填充)添加到现有实体.根据特定条件插入新行时,我需要将新字段设置为its highest value + 1NULL.

例如:

ID     NEW_FIELD     DESCRIPTION
--------------------------------
1          1           bla bla
2                      bla bla       <--- unmatched: not needed here
3                      bla bla       <--- unmatched: not needed here
4          2           bla bla
5          3           bla bla
6          4           bla bla
7                      bla bla       <--- unmatched: not needed here
8          5           bla bla
9                      bla bla       <--- unmatched: not needed here
10         6           bla bla
Run Code Online (Sandbox Code Playgroud)

在旧的SQL中,它将是这样的:

INSERT INTO myTable ( …
Run Code Online (Sandbox Code Playgroud)

java sql hibernate jpa

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

如何在Struts2上实现CSR防伪代码?

我在我的struts.xml和所有表单中添加了一个拦截器,以防止跨站点请求伪造攻击.我想知道我是否还应该做其他事情?比如检索令牌并与提交的表格一起匹配表格,以防它不会自动完成.

  <interceptors>
            <interceptor-stack name="defaultSecurityStack">
                <interceptor-ref name="defaultStack"/>
                <interceptor-ref  name="tokenSession">
                       <param name="excludeMethods">*</param>    
                </interceptor-ref>                    
            </interceptor-stack>
  </interceptors>

 <default-interceptor-ref name="defaultSecurityStack"/>
Run Code Online (Sandbox Code Playgroud)

所有表格都有

  <s:form ...>
      <s:token/>
      ...
  </s:form>
Run Code Online (Sandbox Code Playgroud)

security xss struts2 csrf struts2-interceptors

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

Struts2正则表达式配置

我正在创建一个Struts2 Web应用程序.

我想要一个URL www.xyz.com/portal/orgCode/signin,这个orgCode是动态的,所以我正在使用正则表达式.

我配置struts.xml如:

<constant name="struts.devMode" value="false" />
<constant name="struts.enable.DynamicMethodInvocation" value="true" />
<constant name="struts.action.extension" value=",html,action" />
<constant name="struts.action.excludePattern" value=".*unfiltered.*,.*\\.nofilter" />
<constant name="struts.multipart.maxSize" value="2097152000"/>
<constant name="struts.enable.SlashesInActionNames" value="true"/> 
<constant name="struts.mapper.alwaysSelectFullNamespace" value="false"/>
<constant name="struts.patternMatcher" value="regex" />

<package name="portal" namespace="/portal/{orgCode}" extends="default">
    <interceptors>
        <interceptor name="portalUrlInterceptor"
                    class="com.wtmit.service.portal.interceptor.PortalCommonInterceptor">
        </interceptor>
        <interceptor-stack name="commonPortalUrlInterceptor">
            <interceptor-ref name="portalUrlInterceptor" />
            <interceptor-ref name="defaultStack" />
        </interceptor-stack>
    </interceptors>

    <action name="signin" method="signin"
           class="com.wtmit.service.portal.action.PortalSignInAction">          
        <interceptor-ref name="commonPortalUrlInterceptor"></interceptor-ref>
        <result name="portalSignIn" type="tiles">portalSignIn</result>
        <result name="successLogin" type="redirect">home</result>

    </action>
</package>
Run Code Online (Sandbox Code Playgroud)

这工作正常,但像www.xyz.com/mainLogin以下网址不适用于以下配置:

<package name="main" namespace="/" extends="default">
    <action name="*Login" method="{0}" class="com.service.user.action.LoginAction">
        <result …
Run Code Online (Sandbox Code Playgroud)

java regex friendly-url struts2 pretty-urls

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

使用 Struts2 标签转义字符串

我正在尝试转义字符

<s:select list="#{'Achat d'eclair':'Achat d'eclair'}" />
Run Code Online (Sandbox Code Playgroud)

如何Achat d'eclair在 Struts2 标签中转义?

java jsp struts2 ognl struts-tags

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