Предупреждение Конвертера JSF - PullRequest
1 голос
/ 27 февраля 2011

Из моего файла xhtml:

<h:inputTextarea value="#{newPostForm.post.body}">
     <f:converter converterId="NL2BRConverter" />
</h:inputTextarea>

Из моего файла java:

@FacesConverter(forClass=String.class)
public class NL2BRConverter implements Converter {

@Override
public Object getAsObject(FacesContext ctx, UIComponent comp, String str) {
    return str.replaceAll("\r\n+", "<br />");
    //return str.replaceAll("\r\n+", "&#13");
}

@Override
public String getAsString(FacesContext ctx, UIComponent comp, Object obj) {
    return obj.toString();
}

}

Eclipse выдает мне предупреждение в моем файле xhtml, что Идентификатор конвертера 'NL2BRConverter' не зарегистрирован.

Я пытался заменить аннотацию конвертера на

@FacesConverter("NL2BRConverter")

, но ошибка сохраняется.Разве этого недостаточно для регистрации конвертера в JSF2.0?

В настоящее время, если я использую полное имя класса "com.tracker.converter.NL2BRConverter" в качестве аннотированного имени и converterID в моих файлах XHTML, это работает,Однако я все еще получаю это предупреждение ...

Ответы [ 2 ]

1 голос
/ 28 февраля 2011

Вам не нужно <f:converter>, потому что ваш конвертер уже объявлен forClass=String.class явно для работы на каждом String типе ввода.

Если ваше фактическое намерение состоит в том, чтобы явно объявить его для конкретных полей ввода в представлении, то вместо этого вам следует использовать

@FacesConverter(value="NL2BRConverter")

Тогда вы можете использовать

<f:converter converterId="NL2BRConverter" />
0 голосов
/ 27 февраля 2012

Хотя для этого случая вам не нужно указывать конвертер в xhtml, тот факт, что вы сделали это, не должен вызывать предупреждение в Eclipse.Это на самом деле ошибка в Eclipse.См. https://bugs.eclipse.org/bugs/show_bug.cgi?id=357885 для получения дополнительной информации.Я не знаю, как скрыть это особое предупреждение в Eclipse.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...