Hi,
Just my 2 cents, as I already developed a couple of plugins.
On 13.09.2009, at 10:45, Felix Meschberger wrote:
Hi,
Sten Roger Sandvik schrieb:
Was just looking at the current Felix WebConsole and noticed that
it is
using just servlets with mostly inlined html code.
Not necessary. You have to register a servlet service, but then you
are 'free'.
Yes, on of the goals of the WebConsole is (and was) that it is as
self-contained as possible (actually the console itself currently only
depends on a OSGi HttpService service and the Servlet API).
Supporting plain Servlets is another attempt in this direction:
plugins
should have as minimal dependencies for management as possible.
Therefore the only dependency is again the Servlet API.
Are there any plans for
using a more component oriented approach for building the
webconsole? Like
using wicket, vaadin or something else? It would be really nice if
plugins
can use real components instead of plain html. More maintainable
for sure.
There are no concrete plans for extensions. Currently we use JQuery
(and
plugins) to support more elaborate UI support (such as table sorting).
I used DOJO in a plugin. It looks good, but I found two issues:
- the web console loads a CSS, and so, there is potentially class/
style conflicts. (it's pretty minor, just something to keep in head)
- I had to register the Dojo library (+ images, and styles). So, my
plugin became pretty strange as I have a component dealing with the
HTTP Service and publishing DOJO + Images, and the plugin servlet.
This might be an issue, if several HTTP Service are provided.
- the look and feel is a little bit heterogeneous, as well as
interactions.
Regards,
Clement
Of course, nothing prevents a plugin from making use of UI toolkits --
as long as the plugin is registered as Servlet - the web console does
not care whether the Servlet service is itself rendering or the
servlet
is just a bridge servlet.
Of course contributions for web console extensions in these directions
would be welcome (I myself am considering every now and then how the
scripting infrastructure of Sling (based on Java Scripting API) may be
leveraged for plugins).
Regards
Felix