一个用于执行 XSLT 转换的 IBM Mashup Center 插件
2010-03-22 00:00:00 来源:WEB开发网Version 2 中的 renderEditor 方法只带一个参数:IEditorContext。 框架在响应用户编辑动作时调用的所有方法都使用该参数。回想一下之前关于使用接口还是具体类的讨论。 从上下文可以获得 IRequestContext 接口和 IEntry 接口,前者包含从浏览器发送的信息,后者包含框架为这个 feed 实例维护的所有信息。这些实例的使用类似于 Version 1 中 RequestData 和 Entry 类的使用,所以本文不再深入讨论这个话题。如果您想了解更详细的信息,那么可以参阅前面提到的两篇针对 Version 1 的文章。 通过访问以下 URL,可以在 IBM Mashup Center 安装目录中找到插件 API 的 Javadoc: http://<yourserver>/mashuphub/client/doc/javadoc/index.html。
还应注意,日志记录实例现在通过 IEditorContext 参数传入。 日志消息是与那些来自 feed 生成框架的消息交叉存取的,它们被写到以下文件: <WebApplication>/META-INF/logs/javamashuphub.log。 默认情况下,只有严重级别为 WARN 及以上的消息(例如 ERROR)才会被写到日志文件。
清单 4 显示 renderEditor 方法的主体。
清单 4. renderEditor 方法主体
BasicEditorViewBean htViewBean =
new BasicEditorViewBean( TransformConstants.JSPPATH_TRANSFORM );
htViewBean.setEntry(entry);
htViewBean.setI18NProperties( TransformConstants.I18N_RESFILE );
String s = entry.getAttribute(TransformConstants.PARAM_XSLT );
htViewBean.addAttribute( TransformConstants.PARAM_XSLT , escapeXml( s ) );
IParameter param = entry.getParameter( TransformConstants.PARAM_XMLURL );
if ( param != null ) {
htViewBean.addAttribute( TransformConstants.PARAM_XMLURL
, param.getDefaultValue() );
}
AuthHelper helper = AuthHelper.restoreFromEntry(context
, AuthConstants.AUTH_METHOD_BASIC
, null );
ViewBean authViewBean = helper.getViewBean(context);
FormViewBean form = new FormViewBean();
form.setSuffix( SUFFIX_TRANSFORM );
form.addComponent( htViewBean );
form.addComponent( authViewBean );
form.setOnsubmit( PluginHelper.getClientMe(pluginId, entry.getObjectId()) +
".invokeServer('displayPreviewPage',"
+ PluginHelper.getClientId(pluginId, entry.getObjectId()) +
"_" + form.getSuffix() + ");");
更多精彩
赞助商链接