Просто сделайте , а не , кодируйте его самостоятельно с помощью специальной метки. <f:param>
уже неявно сделает это.
<h:outputLink value="page.jsf">
<h:outputText value="Click" />
<f:param name="foo" value="#{bean.foo}" />
<f:param name="bar" value="#{bean.bar}" />
</h:outputLink>
Вот и все. #{bean.foo}
и #{bean.bar}
в приведенном выше примере могут просто возвращать необработанное и незашифрованное строковое значение.
Обновление согласно комментариям, это говорит о том, что эти два сервера JBoss AS 4.2.3 и WebLogic 10.3.2 используют конкретную реализацию / версию JSF, которая выявляет ошибку в кодировке URL * 1014. *. Пока я могу найти только следующие связанные отчеты (не ясно, используете ли вы MyFaces или Mojarra, поэтому я искал в обоих):
Я рекомендую заменить / обновить версию JSF рассматриваемых серверов до более новой версии, чем упомянутые в этих отчетах, или отправить библиотеки JSF вместе с самим веб-приложением и добавить параметры контекста web.xml
для инструктирования сервера. вместо этого использовать JSF в комплекте с приложением.