1
我想将Silverlight控件嵌入到使用Facelets的JSF 2.0页面中,但是,当页面呈现时,我收到了非常模糊的错误消息。如何将Silverlight控件嵌入到Facelets页面中?
任何人都可以建议我如何做到这一点?我有我的clientaccesspolicy.xml和silverlight.js。
当我删除了<object>
标签,JSF页面显示正确 如果我放在<object>
标签为香草HTML页面,Silverlight控件正确呈现在我的Tomcat 7.0.25。
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui"
xmlns:cayman="http://www.fnet.com/cayman/jsf"
template="/WEB-INF/jsf/template.xhtml">
<ui:define name="title">Home Page</ui:define>
<ui:define name="content">
<h:form>
<ui:include src="header.xhtml">
<ui:param name="loginBean" value="#{UserLoginComponent}" />
</ui:include>
<div>
<p:growl />
</div>
<center>
<p:panel header="Home Page">
<f:verbatim escape="#{true}">
<object data="data:application/x-silverlight-2,"
type="application/x-silverlight-2" width="100%" height="100%">
<param name="source" value="Dashboard.xap" />
<a
href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50826.0"
style="text-decoration: none"> <img
src="http://go.microsoft.com/fwlink/?LinkId=161376"
alt="Get Microsoft Silverlight" style="border-style: none" />
</a>
</object>
</f:verbatim>
<iframe id="_sl_historyFrame"
style="visibility: hidden; height: 0px; width: 0px; border: 0px"></iframe>
<h:inputHidden id="userid" value="ADMINISTRATOR" />
<h:inputHidden id="password" value="admin" />
<h:inputHidden id="adminserviceuurl"
value="http://129.196.218.35:8080/cayman/services" />
</p:panel>
</center>
</h:form>
</ui:define>
谢谢你,为你已经回答了这个和其他许多张贴。 (从来没有机会感谢你,因为他们不是我的。) 我去了各种兔子洞,没有意识到问题不是逐字标签,而是silverlight javascript函数。当我除了逐字和对象标签以外的所有内容都被剥离了,然后它就起作用了。而且,正如您所注意到的,逐字标记不是必需的,所以我已经将它们删除了。 – Jerry 2012-02-07 17:47:34
而且,顺便说一句...最初我有一个堆栈跟踪,但现在我看着我原来的帖子,它已经消失了。奇怪的是,当我发布时,它就在那里。 – Jerry 2012-02-07 17:49:38
不客气。我敢打赌它只是一个XML解析错误。当您将一些JS代码包含在XML文件中时,也会发生这种情况。 JS有像'&','<'等运算符,它们在嵌入XML时需要被转义。最好的办法就是将JS代码放入自己的JS文件中,该文件由包含。 –
BalusC
2012-02-07 17:53:01