【问题标题】:Struts 1 to Struts 2 :: JSP conversionStruts 1 到 Struts 2 :: JSP 转换
【发布时间】:2014-01-23 04:11:12
【问题描述】:

我们有一个 Struts 1 应用程序,并希望将其升级到 Struts 2,因此我们正在尝试以下所有可能的选项来解决我们的优先级

  1. 添加一个 Struts 2 Strut 1 插件,作为我们所有动作类的包装器
  2. 将 JSP 更改为 Struts 2 标签(在任何一种情况下都必须这样做,但选择先这样做
  3. 在转换所有 JSP 后,我们将根据稍后的特定时间对 Action 类进行模块转换。

我们进行了很好的研究,上面提到的所有内容都可以在我们的 POC 中运行。

转换 JSP 标记似乎更加机械化,但是我们正在浪费时间来查找要替换哪些标记以及哪个属性。我很难在互联网上找到。所以任何之前做过这件事的人都可以和我分享一下,或者任何将我所有的 JSP 转换为相应的 struts 2 标签的程序。

如果这里的任何人之前研究过任何快速启动的技巧,这将有助于节省我们一些时间?

【问题讨论】:

  • 还不是机械的吗?如果您有 JSTL 代码,则可以保留与 Struts2 框架一起正常工作的 JSTL。
  • JSTL 工作正常.. 但是例如逻辑:迭代标记我们使用了很多属性,因此需要将其替换为 s:iterator.. 所以我尝试查找是否有一些指南或文档可以在 struts 版本 2 中更改哪个标记跨度>
  • 据我所知,没有自动转换。您应该替换 JSP 页面中的所有 S1 标记/功能。

标签: jsp struts2 struts-1 struts-tags


【解决方案1】:
  1. Struts 1 plugin

    Struts 1 插件允许您使用现有的 Struts 1 Actions 和 Struts 2 应用程序中的 ActionForms。

    这个插件提供了一个通用的 Struts 2 Action 类来包装一个 现有的 Struts 1 Action,org.apache.struts2.s1.Struts1Action。这 包装类提供对旧版 Struts 1 的预期调用 Action 和 ActionForm,将传入和传出对象转换为 预期的形式。它通过使用范围模型驱动来工作 使用单个对象作为每个页面的模型的技术,非常 类似于 Struts 1 ActionForm 的工作方式。该插件还提供 几个拦截器来模拟 Struts 1 逻辑:

    org.apache.struts2.s1.ActionFormValidatorInterceptor - Integrates the validation of ActionForms into the workflow of Struts 2
    org.apache.struts2.s1.ActionFormResetInterceptor - Calls the reset() method on any discovered ActionForms
    
  2. 不,没有工具可以做到这一点。有一个请求 (JIRA WW-2157) 创建一个,但我怀疑我们很快就会看到它。
    但是,根据JIRA comment 的说法,一些 S1 标签应该可以继续工作。

  3. 不需要这样做(感谢插件),但它会很好。祝你好运……

【讨论】:

  • 感谢您的回复...第三点 - 我们希望完全摆脱 struts 1 所以会这样做.. 可能有任何指南可以节省我们的研究时间....
猜你喜欢
  • 1970-01-01
  • 2013-11-10
  • 1970-01-01
  • 2017-08-03
  • 1970-01-01
  • 2011-08-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多