【问题标题】:Returned URL as String is not valid in JSF作为字符串返回的 URL 在 JSF 中无效
【发布时间】:2012-04-24 18:11:11
【问题描述】:

我正在尝试将 google api 用作文本转语音。因此,我构建了一个字符串,然后将其作为 URL 传递给组件,以获取带有口语单词的 MP3。 所以,这是我的代码:

URI uri = new URI("http://translate.google.com/translate_tts?tl=es&q="+ URLEncoder.encode((String)this.text.getValue(), "UTF-8"));

当我创建uri.toString() 时,它会返回一个格式正确的 URL。如果我将此输出复制并粘贴到浏览器中,则效果很好。 但是,如果我将此返回的字符串分配给冰的源属性:outputMedia 不起作用。然后检查页面中生成的 HTML,src 属性中的 String 为:

http://translate.google.com/translate_tts?tl=es&q=Bobby+need+peanuts

& 符号已替换为 &

如何避免这种情况以生成有效的 URL?

【问题讨论】:

  • +1 获取 google 文字转语音提示!
  • 谢谢!试试看!效果很好!当然,如果您可以正确构建 URL 字符串,je

标签: java string jsf-2 icefaces


【解决方案1】:

您需要在客户端使用 Javascript decode url。

var decoded = decodeURI(URI)

【讨论】:

  • 如何解码从托管 bean 返回的字符串,然后将其放入组件的源中?有什么想法吗?
  • 如果我在返回之前在字符串中使用这个方法,什么都不会发生,当我看到代码时页面中的字符串仍然是&而不是&
猜你喜欢
  • 2018-07-18
  • 2012-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多