return createCameliaContext(facesContext.getExternalContext());
RcfacesContext rcfacesContext = createCameliaContext();  context.setAttribute(CAMELIA_CONTEXT_PROPERTY, rcfacesContext);  rcfacesContext.initialize(facesContext.getExternalContext());  return rcfacesContext;
    private static RcfacesContext createCameliaContext(ServletContext context,            ServletRequest request, ServletResponse response) {        try {            FacesContextFactory facesContextFactory = (FacesContextFactory) FactoryFinder                    .getFactory(FactoryFinder.FACES_CONTEXT_FACTORY);            if (facesContextFactory == null) {                throw new FacesException("Can not get Faces Context Factory !");            }            Lifecycle lifecycle = new Lifecycle() {                private static final String REVISION = "$Revision$";                public void addPhaseListener(PhaseListener listener) {                }                public void execute(FacesContext context) throws FacesException {                }                public PhaseListener[] getPhaseListeners() {                    return new PhaseListener[0];                }                public void removePhaseListener(PhaseListener listener) {                }                public void render(FacesContext context) throws FacesException {                }            };            FacesContext facesContext = facesContextFactory.getFacesContext(                    context, request, response, lifecycle);            try {                return createCameliaContext(facesContext.getExternalContext());            } finally {                facesContext.release();            }        } catch (FacesException e) {            Throwable rootCause = e.getCause();            if (rootCause == null) {                throw e;            }            throw new FacesException(e.getMessage(), rootCause);        }    }