Wicket应用程序结构最佳实践

时间:2013-06-20 08:53:19

标签: wicket

我正在使用具有一些Wicket页面的应用程序,该应用程序分为一些应用程序。我们正在扩展Wicket开发以替代其他遗留内容。现在,没有明确的路径为每个工作流程编写新的Wicket应用程序,或者我们应该有一个带有许多URL映射的大型应用程序。我也没有找到任何相关信息。

就我们而言,我们看到以下问题:

许多Wicket应用程序模式:

  • 每个应用程序(工作流程)都可以轻松安装而不会有太多麻烦。
  • 即使它不是更耗时,你最终会编写更多的Java类(至少对于你需要的每个应用程序至少有一些基本结构)。
  • 每个应用程序默认URL都可以通过它的主页访问,因此无需进一步配置。

一个重要的应用模式:

  • 每个工作流都需要一个Page,必须在Application类中映射。据我所见,xml文件中没有配置来实现这一点,但是应该可以开发一些允许在某个xml文件中构造它的模式。 Disatvantage:第一次耗费更多时间
  • 对于进一步添加,它应该比使用Application模式稍微容易一些,但考虑到工作流开发总是比初始配置更大,它没有什么区别会产生真正的差异。
  • 每个工作流程默认URL都可以通过URL映射访问,并且可以轻松更改,它似乎比使用Application方法更容易,但也没有产生很大的不同。

现在,我正在寻找:

  • 基于经验的意见,也许是以某种方式决定的论据。
  • 是否有来自Apache或某些来源的文档?如果是这样,一些参考将是一个很好的建议。

2 个答案:

答案 0 :(得分:2)

据我了解,您仍然可以在一个Web存档中部署所有Wicket应用程序。

这样做,在我看来,你失去了将代码分成不同Wicket应用程序的唯一真正优势。如果您将代码分成多个Wicket应用程序

  • 你必须考虑以相同的方式配置每个Wicket应用程序而不要忘记一个(包含在web.xml中,在init() - 方法中调用相同的设置,...)
  • 你正在编写更多样板代码,正如你自己已经说过的那样

配置和代码比“单一应用程序”方法更复杂。使用单一应用

  • 您只需要在单个应用程序类中安装每个工作流的起始页...这是一行代码与新类相比,而某些行的web.xml配置与多个应用程序认可

因此,如果您不想单独部署工作流程,我会使用单个应用程序。它让它变得如此简单。特别是当您累积了多个工作流程时,单个应用程序方法可能更容易维护。

答案 1 :(得分:0)

  • 你可能有多少共用尾声?
  • 不同的工作流程是否有不同的性能/负载容差/可用性要求?

这些是我一般用来决定是否应该在一个应用程序中使用两个东西的问题,而且这几乎与Wicket无关。

显然,很多共享代码指向单个应用程序。当然,根据一组共享模块,您仍然可以使用单独的应用程序,但实际上,您将花费大量时间来保持模块的同步。

同样,完全不同的可用性要求可能会引导您走向单独的应用程序,因为您可能希望单独部署它们。

最困难的情况是,如果您有很多共享代码并且您仍然希望单独部署它们,那么多层方法(连接到公共后端的多个前端)可能值得考虑。