Как использовать сервисы Spring в бинах, управляемых JSF?

JSF - очень популярная технология в мире Java, однако сотрудничество с Spring по-прежнему затруднительно и требуетпротивный» хаки. У меня в настоящее время проблема с одним из этогописаки.

Услуги Spring вводятся с использованиемSpringBeanFacesELResolver, Это настраивается в:faces-config.xml


    
        org.springframework.web.jsf.el.SpringBeanFacesELResolver
    

Внедрение сервисов Spring очень уродливо, но работает:

@ManagedProperty(value="#{customerService}")
CustomerService customerService;

Но есть проблемы. JSF требует от меня, чтобы управляемый компонент был сериализуемым. Это означает, что служба Spring также должна быть сериализуемой, или поле должно быть временным. Когда поле является переходным, инъекция не работает (у меня есть ноль в этом поле). А делать сериализуемые сервисы Spring, на мой взгляд, не очень хорошая идея и потенциальные проблемы с производительностью - что должно произойти с контекстом Hibernate, источниками данных, которые все внедряются в сервис Spring?

Итак, каков правильный и менее болезненный способ использования сервисов Spring с управляемыми компонентами JSF?

Ответы на вопрос(1)

Ваш ответ на вопрос