我们拥有不是Seam而是FreeMarker生成的许多页面中的第一个。 FreeMarker无法处理,但是我们需要在页面中拥有链接,这些链接可以链接到同一应用程序中的Seam页面。

我想做的是从后端处理表示为s:link的view =“ / something.xhtml”或action =“#{testClass.test}”的东西,这样我可以得到一个URL ,将其放入FreeMarker的哈希中,然后FreeMarker可以像将其插入文本一样将其插入页面中。

问题是,我该怎么做?我将使用哪些Seam函数进行转换?

或者,如果您的回答是“阅读愚蠢的源代码”,请告诉我在哪里寻找为标签提供动力的源代码。我自己想到了这个,但是由于我对Seam,JSF等不熟悉,所以我无法弄清楚应该去哪里。

最佳答案

我认为这很难。您正在寻找的逻辑在几个类中是稀疏的,从s:link出来的最终html取决于整个JSF渲染响应阶段中发生的情况。

定义操作和视图属性的呈现方式的大多数代码都在org.jboss.seam.ui.component.UISeamCommandBase中。我建议您开始在此类的getUrl()方法中放置一些断点。

希望这可以帮助。

关于java - 如何在后端解析Seam URL?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6047924/

10-10 11:59