我有一个客户想要使用JSF2,他们喜欢XHTML现在是默认的(Facelets).
但是,他们的JSF1.x代码库中有大量的"遗留"JSP.
我知道这可能不太可取,但是有可能在JSF2中支持两者的混合,至少在他们移植的过渡期间吗?
我知道可以在JSF1.x中混合使用两者,但我在JSF2中找不到任何关于此的信息.
我用谷歌搜索过,但自然所有JSF2都集中在Facelets上.我对混音的简短尝试(我不是JSF的专家!)导致了失败.
我现在正在我的实体上使用JPA2 @Cacheable注释,一切都运行良好.
我现在需要缓存ManyToOne关联.
在经典的Hibernate中,有必要注释与@Cache的关联.
@org.hibernate.annotations.Cache(usage=CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
private Set<Student> supervisionGroup;
Run Code Online (Sandbox Code Playgroud)
这很有效.但似乎我们不能在实体本身以外的任何东西上使用JPA2 @Cacheable注释.
我是否遗漏了某些内容,或者JPA委员会是否过于朦胧而无法意识到协会必须被缓存以及实体?当然它不能是昏暗的选择?
我在我的视图中使用ag:select(实际上是ag:currencySelect).
我想要在用户更改结果选择框中的值时立即触发控制器操作.
我怎样才能做到这一点?
我正在为Liferay部署最基本的Portlet:
public class FirstPortlet extends GenericPortlet
{
@RenderMode(name="VIEW")
public void welcomeWelcome(RenderRequest request,
RenderResponse response) throws
PortletException, IOException
{
PrintWriter out = response.getWriter();
out.println ("This is a portlet, <em>within a Portal</em>");
}
}
Run Code Online (Sandbox Code Playgroud)
在部署时,我得到一个ClassCastException:
Caused by: java.lang.ClassCastException: FirstPortlet cannot be cast to javax.po
rtlet.Portlet
Run Code Online (Sandbox Code Playgroud)
在谷歌搜索之后,似乎部署portlet.jar是一个错误 - 我已经确定我不会意外地这样做.
javax.portlet.Portlet由GenericPortlet实现,所有Portlet示例似乎都扩展了GenericPortlet,所以我认为没问题.
有人可以帮忙吗?