Ответ 1
Если вы уже используете EL 3.0 (Java EE 7, WildFly, Tomcat 8, GlassFish 4 и т.д.), вы можете использовать для этого новый оператор +=
:
<h:commandButton ... action="#{someController.doSomething(id += 'SomeTableId')}" />
Если вы еще не используете EL 3.0, а левая - подлинный экземпляр java.lang.String
(и, следовательно, не такой, например, java.lang.Long
), то используйте функцию EL 2.2 для вызова прямых методов с аргументами, которые затем примените на String#concat()
:
<h:commandButton ... action="#{someController.doSomething(id.concat('SomeTableId'))}" />
Или, если вы еще не находитесь на EL 2.2, используйте JSTL <c:set>
для создания новой EL-переменной с конкатенированными значениями, только что вложенными в значение:
<c:set var="tableId" value="#{id}SomeTableId" />
<h:commandButton ... action="#{someController.doSomething(tableId)}" />