0

我需要从 URL 复制 MP3。所以,在我的页面中使用这个:

<ice:outputMedia binding="#{boardBean.opMedia}" id="opMedia"/>
<ice:commandButton image="#{icon.imagen}" action="#{boardBean.selectIcon(icon)}">
    <f:ajax render="opMedia"/>
</ice:commandButton>

然后,在支持 bean “BoardBean”(是@Viewscoped)中

this.opMedia.setSource(uri.toString());

此想法是选择图标时,形成具有声音的URL,并被设置为OutputMedia的源。

在谷歌浏览器中运行良好。每次单击ice:outputMedia都会重新渲染组件,以便复制 mp3。但在 Firefox 和 IExplorer 中没有。我没有用新属性重新渲染组件,所以没有播放 Mp3

任何想法为什么?是否有一种适用于所有浏览器的“更标准”的方式来执行此操作?

4

1 回答 1

0

我发现了问题。该uri.toString()方法返回一个具有特殊字符“&”的字符串。此字符由 替换&amp;。Chrome 能够将其解码为正确的字符并检索 URL,但 IE 和 Firefox 不能。

现在,问题将是找到这个编码/解码问题的解决方案。但这将在另一个线程中。

于 2012-04-26T20:51:45.160 回答