2

我安装了 OmniFaces 1.6,并创建了带注释的类@FacesConverter(forClass=MyClass.class)

在 GlassFish 中的项目部署期间,我有几个磨损:

INFO: Initialisation de Mojarra 2.2.2 ( 20130809-1625 https://svn.java.net/svn/mojarra~svn/tags/2.2.2@12376) pour le contexte «/ErpCCFWEB»
WARNING: @FacesConverter is using both value and forClass, only value will be applied.
WARNING: @FacesConverter is using both value and forClass, only value will be applied.
WARNING: @FacesConverter is using both value and forClass, only value will be applied.
WARNING: @FacesConverter is using both value and forClass, only value will be applied.
WARNING: @FacesConverter is using both value and forClass, only value will be applied.
INFO: Running on PrimeFaces 4.0.RC1

我有 3 个带注释的类,其中之一如下:

@FacesConverter(forClass = Commune.class)
public class CommuneConverter implements Converter {

    private static final Logger LOG = Logger.getLogger(CommuneConverter.class.getName());
    @EJB
    private ReferentielDaoLocal myService;
    @Override
    public Object getAsObject(FacesContext context, UIComponent component, String value) {
        if (value == null) {
            return null;
        } else {
            try {
               // ReferentielDaoLocal myService = (ReferentielDaoLocal) new InitialContext().lookup("java:global/ErpCCF/ErpCCF-ejb/ReferentielDaoImpl");
                return myService.findCommuneByCode(value);
            } catch (Exception ex) {
                LOG.log(Level.SEVERE, "Converter Commune Error", ex.getMessage());
                return null;
            }

        }
    }

    @Override
    public String getAsString(FacesContext context, UIComponent component, Object value) {
        if (value == null) {
            return null;
        } else {
            return String.valueOf(((Commune) value).getIdCommune());
        }
    }
}
4

1 回答 1

5

据此:_

警告是特定于 Mojarra 的,与 OmniFaces 完全无关。这已在 Mojarra 2.1.26 中修复:https ://java.net/jira/browse/JAVASERVERFACES-2987

跟踪器还包括 2.2.3 作为修复版本,因此您可以尝试一下。

于 2013-09-25T09:23:13.033 回答