@FacesComponent on shared library

2019-03-01 05:04发布

I'm trying to use a custom jsf component on Websphere 8.5. The component class is annotated with @FacesComponent.

The component is on a shared lib jar on the server. I already have an faces-config inside the jar META-INF folder.

If the jar is inside my ear file it works as expected, but when its on a sharedlib it gives me "Undefined component type MyUIActionList" error.

Any ideas on how to make this work?

1条回答
我命由我不由天
2楼-- · 2019-03-01 05:12

Web fragment JARs belong in WAR/WEB-INF/lib and absolutely not in EAR/lib nor Server/lib.

See also a.o. chapter 8.1 of Servlet 3.0 specification (emphasis mine):

8.1 Annotations and pluggability

In a web application, classes using annotations will have their annotations processed only if they are located in the WEB-INF/classes directory, or if they are packaged in a jar file located in WEB-INF/lib within the application.

...

End of story.

查看更多
登录 后发表回答