Hi,
I tried to use Control Panel portlet. I added AutoCompleteTextField into web-inf/lib of Liferay.
When I choose it to complile in control panel portlet I receive following error:
Loading inherited module ‘com.itmill.incubator.autocomplete.widgetset.AutoCompleteWidgetset’
[ERROR]
Unable to find ‘com/itmill/incubator/autocomplete/widgetset/AutoCompleteWidgetset.gwt.xml’ on your classpath; could be a typo, or maybe you forgot to include a classpath entry for source?
[ERROR]
Line 5: Unexpected exception while processing element ‘inherits’
com.google.gwt.core.ext.UnableToCompleteException: (see previous log entries)
The add-on manifest should be verified when submitting them. I’m not sure if this issue has been treated yet, or if the add-on in question is just too old, so I added a ticket (
#6123 ) about this. There was a similar ticket
#4043 about the same topic but from a different perspective.
Yes, I think it would be a good test. It would have to compile using the widget set generator, which generates a combining widget set, and not just the single widget set, which is also possible.
There has been discussion about running regression tests for the add-ons automatically in Directory or in an open CI system, and compilation would of course be part of that.
If my memory servers me correctly, there may also have been some discussion about compiling combining widget sets (as add-ons) in Directory, much like with the Vaadin Control Panel for Liferay. I don’t know what is the status of that. Well, if I remember wrong, it still might be a good idea.
Yes.
Never use any experimental add-ons on production, unless they are marked as “stable”.
BTW, I’ve just got “Communication Problem” nag screen in Vaadin Add-On shop…
Yes, and your portlet is gonna
suffer from this problem as well as mine. I’ve posted there also a solution how to semi-fix it (not really a fix, but no alert either). BTW, I betcha
this great Vaadin Mail Portlet is suffering the same problem. Unfortunately, I can not confirm it right now, since when I am trying to setup it, then it just crashes on Liferay 5.x like this:
java.lang.NullPointerException
at com.vaadin.liferay.mail.Controller.getUserLocale(Controller.java:150)
at com.vaadin.liferay.mail.util.Lang.get(Lang.java:11)
at com.vaadin.liferay.mail.PreferencesView.<init>(PreferencesView.java:85)
at com.vaadin.liferay.mail.MailApplication.createPreferencesView(MailApplication.java:298)
at com.vaadin.liferay.mail.MailApplication.access$700(MailApplication.java:38)
at com.vaadin.liferay.mail.MailApplication$MailPortletListener.handleRenderRequest(MailApplication.java:149)
at com.vaadin.terminal.gwt.server.PortletApplicationContext.firePortletRenderRequest(PortletApplicationContext.java:163)
at com.vaadin.terminal.gwt.server.ApplicationPortlet.writeAjaxWindow(ApplicationPortlet.java:229)
at com.vaadin.terminal.gwt.server.ApplicationPortlet.render(ApplicationPortlet.java:83)
…and like this:
com.vaadin.event.ListenerMethod$MethodException
Cause: java.lang.IllegalArgumentException: The collection passed to BeanItemContainer must not be null or empty
at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:507)
at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:161)
at com.vaadin.ui.AbstractComponent.fireEvent(AbstractComponent.java:1146)
at com.vaadin.ui.Button.fireClick(Button.java:366)
at com.vaadin.ui.Button.changeVariables(Button.java:188)
at com.vaadin.terminal.gwt.server.AbstractCommunicationManager.handleVariables(AbstractCommunicationManager.java:1087)
at com.vaadin.terminal.gwt.server.AbstractCommunicationManager.doHandleUidlRequest(AbstractCommunicationManager.java:587)
at com.vaadin.terminal.gwt.server.CommunicationManager.handleUidlRequest(CommunicationManager.java:265)
at com.vaadin.terminal.gwt.server.AbstractApplicationServlet.service(AbstractApplicationServlet.java:482)