过程 - 创建属性面板
创建要在其中显示面板的 JSP 页面。除了属性面板外,还可以包含其他组件。在 JSP 页面中包括以下 taglib 指令:
<%@ taglib uri="http://www.ptc.com/windchill/taglib/components" prefix="jca"%>
描述属性面板
要描述属性面板,请使用 describePropertyPanel 和 describeProperty 标记:
<jca:describePropertyPanel var="<name of the descriptor>">>
<jca:describeProperty id="<attribute name>" />
<jca:describeProperty id="<attribute name>" />
<jca:describeProperty id="<attribute name>" />
</jca:describePropertyPanel>
描述符的名称可以为用于标识面板的任何名称。此外,该名称将用作 JSP 上下文中包含面板描述符对象的变量名称。
这两个标记都具有可用于配置如何创建和/或显示属性的 GUI 组件的可选属性。有关详细信息,请参阅标记的 Javadoc。
获取属性面板的数据模型
getModel 标记将通过调用您指定的服务方法为面板获取基准对象。然后,此标记将调用数据实用程序,以使用基准对象生成属性的 GUI 组件。例如:
<jca:getModel var="<name of the data model>"
descriptor="${<name of the descriptor>}"
serviceName="wt.fc.StandardPersistenceManager"
methodName="refresh">
<jca:addServiceArgument value="${commandBean.primaryOid.oid}"
type="wt.fc.ObjectIdentifier" />
</jca:getModel>
<name of the data model> 的值可以是要分配给模型的任何名称。此名称将用作将保存所创建数据模型的 JSP 上下文中范围变量的名称。
应在 describePropertyPanel 标记中使用 <name of the descriptor> 的值。
serviceNamemethodName 参数可指定应用于获取模型的基准对象的服务方法。addServiceArgument 子标记可用于将参数传递给服务方法。通常情况下,StandardPersistenceManager.refresh() 方法可用于为仅查看面板的基准对象获取可持续对象。例如:
<jca:getModel var="propertyModel" descriptor="${propertyPanelDesc}
"serviceName="wt.fc.StandardPersistenceManager" methodName="refresh">
<jca:addServiceArgument value="${commandBean.primaryOid.oid}
" type="wt.fc.ObjectIdentifier" />
</jca:getModel>
或者,也可以调用查询命令或服务方法来检索基准对象。
向导面板的基准对象通常应为 TypeInstanceCreateAndEditModelGetter.getItemAttributes() 方法可用于为包含 TypeInstance 标记的向导获取 initializeItem 基准对象。例如:
<jca:getModel var="attributesTableModel" descriptor="${meetingPanelModel}"
serviceName="com.ptc.core.components.forms.CreateAndEditModelGetter"
methodName="getItemAttributes">
<jca:addServiceArgument value="${ meetingPanelDescriptor }"
type="com.ptc.core.components.descriptor.ComponentDescriptor"/>
<jca:addServiceArgument value="${commandBean}"
type="com.ptc.netmarkets.util.beans.NmCommandBean"/>
<jca:addServiceArgument value="${nmcontext.context}"
type="com.ptc.netmarkets.util.misc.NmContext"/>
</jca:getModel>
有关详细信息,请参阅 getModel 标记 javadoc。
呈现特性面板
要呈现特性面板,请使用 renderPropertyPanel 标记。例如:
<jca:renderPropertyPanel model="${<name of the data model>}"/>
应在 getModel 标记中使用 <name of the data model> 的值。
这对您有帮助吗?