To use the component 2 things are required:
1. the component must be accessible by
the tomcat webapp-classloader: so
the compiled class must either:
- be copied as .class into `webapps/ivy/WEB-INF/classes`
- be copied as .jar into `webapps/ivy/WEB-INF/libs`
1. furthermore the component must be registered in the
`webapps/ivy/WEB-INF/faces-config.xml`.
You will see that our own
IvyComponent is also registered
there:
<component>
<component-type>IvyComponent</component-type>
<component-class>ch.ivyteam.ivy.dialog.execution.jsf.component.IvyCompositeComponent</component-class>
</component>
And yes the approach has some limitations:
- components must be part of your deployment process. So you should have an automated deployment chain with scripts that also deploy and register this component during project deployments.
- designer requires a full restart before changes in faces-config.xml or changes in compile jar/classes are in effect.