天天看点

OFBiz控制器与WEB应用指引

o 使用安全连接

在你的<request-map ..>编辑中使用<security > 标签,其中https="true"将使页面使用https协议,auth="true|false"决定用户是否必须先登入系统,direct-request="false"将不允许用户直接通过浏览器输入地址方式访问(即只能通过request-chain请求链方式访问)

o 异步方式运行服务

<event type="sevice" path="async" >
           

o 确认用户不会多次提交表单

使用 <response type="request-redirect" >替代type="view",在使用request-redirect做为回应方式时,将会将参数作为URL一部分,所以在有特殊字符时有可能导致错误。所以不要这样使用:

<response name="viewContact" type="request-redirect" value="viewContact"/>
           

可以使用以下方式来替代:

<response name="viewContact" type="request" value="viewContact"/>
           

o 错误信息的获得

错误与事件信息被设置于请求属性中的 _ERROR_MESSAGE_(String),_EVENT_MESSAGE_(String)。它们可以request.setAttribute()方式设置及通过request.getAttribute()方式读取。

参考 framework/common/webcommon/includes/messages.ftl

o 在请求后进行重定向

使用"/control/req1/req2"方式则控制器将在执行请求"req1"后进行"req2"

o 如何在查询按钮中加入预填参数

查询按钮可以通过Javascript方式创建查询操作,你可以使于预填字段方式在尾部增加参数,示例:

"javascript:call_fieldlookup2(document.addProductStoreRole.partyId,'LookupPartyName?productStoreId=${productStoreId}');"
           

o 关于XSL:FO的提示

在描述或文本后追加?xml或使用<#escape x as x?xml>,以避免收到错误提示。

o 在应用间切换时保持用户登入状态

在一个应用跳转至另一个应用时在URL中放入externalLoginKey参数,这样系统就不会再次要求你进行登入操作:

&externalLoginKey=${externalLoginKey}

本文档译自ofbiz 4.0 cookbooks,本人翻译,欢迎转载,请注明出处.

继续阅读