Vaadin Control Panel for Liferay - compile error

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)

Any advice?

Looks like the META-INF/MANIFEST.MF has invalid path for the widgetset:

Vaadin-Widgetsets: com.itmill.incubator.autocomplete.widgetset.AutoCompleteWidgetset

But the Jar contains:

org/itmill/sami/autocomplete/widgetset/AutoCompleteWidgetset.gwt.xml

I hope Sami fixes this. If you want a quick fix, unjar the jar, fix the manifest, and update it in the jar.

Thank you, thank you, thank you :slight_smile:

It’s the 2nd addon with wrong widgetset definition. I didn’t think this would be a problem . :mad:

Thanks

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.

could compiling a widgetset serve as test?

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…

Never say never :slight_smile: I am not yet in production.

I wanted to compile with maven but firstly I want to try it with Control Panel, it’s easier for me now.

And btw I received long “Communication error” too.

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)

:frowning:

I don’t use mail portlet, but I saw this error on vaadin web page.

I came accross little change in Control panel portlet today. The gwt jars should go to WEB-INF/vaadin/gwt/ folder.

I use latest version from trunk and widgets stopped compiling :slight_smile: Fortunately it’s open source and we can debug
:stuck_out_tongue: