В настоящее время я работаю над веб-приложением, которое использует библиотеку draw2d для рисования фигур и диаграмм. На стороне сервера я использую Java (JSF).
Я могу сказать, что 95% этого приложения - просто чистый JavaScript. Мне нравится иметь возможность отправлять запросы Ajax из моего JavaScript без необходимости использования скрытых полей, таких как <f:inputText>
(возможно, с использованием компонентов jQuery Ajax?).
Я пытался обойти это, добавив другой скрытый компонент JFS и jsf.ajax.request
, но по какой-то причине они не очень надежны, а иногда они не отправляют запрос ajax.
Есть предложения? Кроме того, насчет jQuery, я не уверен, как обработать запрос на стороне сервера.
Ответ: В итоге я воспользовался тем, что предложил Дейв. Ранее я пытался использовать jsFunction по этой ссылке , но я получил ошибку. По-видимому, проблема в том, что еще не реализовано в Richfaces 4. Однако, если вы используете, как упоминал Дэйв, это прекрасно работает.
Еще один момент, бобы не работали на меня, когда Дэйв потоптался. Я должен был изменить это следующим образом:
@ManagedBean (name = "jsFunctionBean")
@SessionScoped
открытый класс JsFunctionBean {
/**
* Test String name
*/
private String name;
public String getName() { return this.name; }
public void setName(String name) { this.name = name; }
/**
* Test boolean
*/
private boolean test;
public boolean getTest() { return this.test; }
public void setTest(boolean test) { this.test = test; }
/**
* Action Method
*
* @return
*/
public String getActionMethod() {
return null;
}
public String actionMethod(){
this.test = true;
this.name = "Dave";
return null;
}
}
Я не уверен, почему это так, но если я удалю getActionMethod или actionMenthod, я получу ошибку!