Applicationwizard fails after i select schema

69 views
Skip to first unread message

Linus Nikander

unread,
May 11, 2015, 4:06:18 AM5/11/15
to manydesign...@googlegroups.com
Portofino 4.1.2 . Any ideas what might be wrong? I've tried different schemas, same problem. Oracle backend.

2015-05-11 10:03:49,696 INFO  c.m.portofino.sync.DatabaseSyncer        Synchronizing tables
2015-05-11 10:03:49,719 ERROR c.m.p.a.a.appwizard.ApplicationWizard    null
java.lang.NullPointerException: null
        at com.manydesigns.portofino.sync.DatabaseSyncer.syncColumns(DatabaseSyncer.java:466) ~[portofino-database-4.1.2.jar:4.1.2]
        at com.manydesigns.portofino.sync.DatabaseSyncer.syncTables(DatabaseSyncer.java:428) ~[portofino-database-4.1.2.jar:4.1.2]
        at com.manydesigns.portofino.sync.DatabaseSyncer.syncSchema(DatabaseSyncer.java:138) ~[portofino-database-4.1.2.jar:4.1.2]
        at com.manydesigns.portofino.sync.DatabaseSyncer.syncDatabase(DatabaseSyncer.java:124) ~[portofino-database-4.1.2.jar:4.1.2]
        at com.manydesigns.portofino.actions.admin.appwizard.ApplicationWizard.configureModelSchemas(ApplicationWizard.java:437) [portofino-admin-4.1.2.jar:4.1.2]
        at com.manydesigns.portofino.actions.admin.appwizard.ApplicationWizard.selectSchemas(ApplicationWizard.java:374) [portofino-admin-4.1.2.jar:4.1.2]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.6.0_35]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.6.0_35]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.6.0_35]
        at java.lang.reflect.Method.invoke(Method.java:622) ~[na:1.6.0_35]
        at net.sourceforge.stripes.controller.DispatcherHelper$6.intercept(DispatcherHelper.java:456) ~[stripes-1.5.8.jar:1.5.8]
        at net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:158) ~[stripes-1.5.8.jar:1.5.8]
        at com.manydesigns.portofino.interceptors.GuardsInterceptor.intercept(GuardsInterceptor.java:61) ~[portofino-base-4.1.2.jar:4.1.2]
        at net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:155) ~[stripes-1.5.8.jar:1.5.8]
        at net.sourceforge.stripes.controller.BeforeAfterMethodInterceptor.intercept(BeforeAfterMethodInterceptor.java:113) ~[stripes-1.5.8.jar:1.5.8]
        at net.sourceforge.stripes.controller.ExecutionContext.proceed(ExecutionContext.java:155) ~[stripes-1.5.8.jar:1.5.8]
        at net.sourceforge.stripes.controller.ExecutionContext.wrap(ExecutionContext.java:74) ~[stripes-1.5.8.jar:1.5.8]
        at net.sourceforge.stripes.controller.DispatcherHelper.invokeEventHandler(DispatcherHelper.java:454) ~[stripes-1.5.8.jar:1.5.8]
        at net.sourceforge.stripes.controller.DispatcherServlet.invokeEventHandler(DispatcherServlet.java:278) ~[stripes-1.5.8.jar:1.5.8]
        at net.sourceforge.stripes.controller.DispatcherServlet.service(DispatcherServlet.java:160) ~[stripes-1.5.8.jar:1.5.8]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) ~[servlet-api.jar:na]
        at net.sourceforge.stripes.controller.DynamicMappingFilter$2.doFilter(DynamicMappingFilter.java:453) ~[stripes-1.5.8.jar:1.5.8]
        at net.sourceforge.stripes.controller.StripesFilter.doFilter(StripesFilter.java:260) ~[stripes-1.5.8.jar:1.5.8]
        at net.sourceforge.stripes.controller.DynamicMappingFilter.doFilter(DynamicMappingFilter.java:440) ~[stripes-1.5.8.jar:1.5.8]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.61]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.61]
        at com.manydesigns.portofino.servlets.I18nFilter.doFilter(I18nFilter.java:60) ~[portofino-base-4.1.2.jar:4.1.2]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.61]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.61]
        at net.sourceforge.stripes.controller.StripesFilter.doFilter(StripesFilter.java:260) ~[stripes-1.5.8.jar:1.5.8]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.61]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.61]
        at com.manydesigns.portofino.servlets.CleanupFilter.doFilter(CleanupFilter.java:47) ~[portofino-database-4.1.2.jar:4.1.2]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.61]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.61]
        at com.manydesigns.portofino.servlets.DispatcherFilter.doFilter(DispatcherFilter.java:61) ~[portofino-pageactions-4.1.2.jar:4.1.2]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.61]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.61]
        at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449) ~[shiro-web-1.2.3.jar:1.2.3]
        at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365) ~[shiro-web-1.2.3.jar:1.2.3]
        at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) ~[shiro-core-1.2.3.jar:1.2.3]
        at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) ~[shiro-core-1.2.3.jar:1.2.3]
        at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383) ~[shiro-core-1.2.3.jar:1.2.3]
        at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362) ~[shiro-web-1.2.3.jar:1.2.3]
        at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125) ~[shiro-web-1.2.3.jar:1.2.3]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.61]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.61]
        at com.manydesigns.elements.servlet.ElementsFilter.doHttpFilter(ElementsFilter.java:132) ~[elements-4.1.2.jar:4.1.2]
        at com.manydesigns.elements.servlet.ElementsFilter.doFilter(ElementsFilter.java:83) ~[elements-4.1.2.jar:4.1.2]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) ~[catalina.jar:7.0.61]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) ~[catalina.jar:7.0.61]
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) ~[catalina.jar:7.0.61]
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) ~[catalina.jar:7.0.61]
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505) ~[catalina.jar:7.0.61]
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) ~[catalina.jar:7.0.61]
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) ~[catalina.jar:7.0.61]
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) ~[catalina.jar:7.0.61]
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) ~[catalina.jar:7.0.61]
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423) ~[catalina.jar:7.0.61]
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079) ~[tomcat-coyote.jar:7.0.61]
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620) ~[tomcat-coyote.jar:7.0.61]
        at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318) ~[tomcat-coyote.jar:7.0.61]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146) ~[na:1.6.0_35]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) ~[na:1.6.0_35]
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-coyote.jar:7.0.61]
        at java.lang.Thread.run(Thread.java:701) ~[na:1.6.0_35]

Alessio Stalla

unread,
May 12, 2015, 4:35:29 AM5/12/15
to manydesign...@googlegroups.com
Hi,
I investigated a bit, it looks like recent versions of Liquibase don't report the column JDBC data type for Oracle as they do for other databases. I opened a ticket: https://liquibase.jira.com/browse/CORE-2359. You can vote for it if you want. We'll see together with the Liquibase developers whether it makes sense that they fix it or not, and in the latter case what it means for us to fix it. In the meantime, unfortunately, you'll have to stick with Portofino 4.1.1, since Liquibase 3.0.5, the last version without that issue, is not API-compatible with 3.3.2, which we use in Portofino since 4.1.2.

--
You received this message because you are subscribed to the Google Groups "manydesigns-portofino" group.
To unsubscribe from this group and stop receiving emails from it, send an email to manydesigns-port...@googlegroups.com.
To post to this group, send email to manydesign...@googlegroups.com.
Visit this group at http://groups.google.com/group/manydesigns-portofino.
For more options, visit https://groups.google.com/d/optout.

Alessio Stalla

unread,
May 18, 2015, 11:27:28 AM5/18/15
to manydesign...@googlegroups.com
Hi, a follow up:

We contacted Liquibase author Nathan Voxland who very kindly investigated about the issue quickly and proposed to fix it in a forthcoming version of Liquibase, while at the same time suggesting an immediate workaround. So we will release Portofino 4.1.3 with that workaround (already implemented: https://tt.manydesigns.com/projects/PRT/tickets/PRT/1690) and we'll eventually remove it when the new Liquibase gets released.

Cheers,
Alessio

Linus Nikander

unread,
May 19, 2015, 3:51:38 AM5/19/15
to manydesign...@googlegroups.com
Excellent. Is there any way to get a version with the fix now? We're in a development phase so it's not that big of a problem if I have to update again when you release it officially.

To unsubscribe from this group and stop receiving emails from it, send an email to manydesigns-portofino+unsub...@googlegroups.com.

Alessio Stalla

unread,
May 19, 2015, 4:18:36 AM5/19/15
to manydesign...@googlegroups.com
We'll release it next week. If you're in a hurry, I just pushed the fix to SourceForge, you can build it from source (version: 4.1.3-SNAPSHOT).

To unsubscribe from this group and stop receiving emails from it, send an email to manydesigns-port...@googlegroups.com.
To post to this group, send email to manydesign...@googlegroups.com.
Visit this group at http://groups.google.com/group/manydesigns-portofino.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "manydesigns-portofino" group.
To unsubscribe from this group and stop receiving emails from it, send an email to manydesigns-port...@googlegroups.com.

Linus Nikander

unread,
May 19, 2015, 4:49:35 AM5/19/15
to manydesign...@googlegroups.com
which mvn-target creates the release-package? Or do I have to create the .war and manually deploy?

To unsubscribe from this group and stop receiving emails from it, send an email to manydesigns-portofino+unsub...@googlegroups.com.
To post to this group, send email to manydesign...@googlegroups.com.
Visit this group at http://groups.google.com/group/manydesigns-portofino.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "manydesigns-portofino" group.
To unsubscribe from this group and stop receiving emails from it, send an email to manydesigns-portofino+unsub...@googlegroups.com.

Alessio Stalla

unread,
May 19, 2015, 5:36:57 AM5/19/15
to manydesign...@googlegroups.com
The release process is not documented, it is not hard but I don't have time now. It may be something to be put on the wiki later on.
Depending on how your project is structured, the easiest option is probably to just mvn install the portofino-database module and replace it in your application.

To unsubscribe from this group and stop receiving emails from it, send an email to manydesigns-port...@googlegroups.com.
To post to this group, send email to manydesign...@googlegroups.com.
Visit this group at http://groups.google.com/group/manydesigns-portofino.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "manydesigns-portofino" group.
To unsubscribe from this group and stop receiving emails from it, send an email to manydesigns-port...@googlegroups.com.

To post to this group, send email to manydesign...@googlegroups.com.
Visit this group at http://groups.google.com/group/manydesigns-portofino.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "manydesigns-portofino" group.
To unsubscribe from this group and stop receiving emails from it, send an email to manydesigns-port...@googlegroups.com.

Linus Nikander

unread,
May 19, 2015, 5:37:37 AM5/19/15
to manydesign...@googlegroups.com
excellent, i'll try that. 

--
You received this message because you are subscribed to a topic in the Google Groups "manydesigns-portofino" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/manydesigns-portofino/CoTvsuQ14xk/unsubscribe.
To unsubscribe from this group and all its topics, send an email to manydesigns-port...@googlegroups.com.

To post to this group, send email to manydesign...@googlegroups.com.
Visit this group at http://groups.google.com/group/manydesigns-portofino.
For more options, visit https://groups.google.com/d/optout.



--
Med vennlig hilsen / kind regards
LINUS NIKANDER
SENIOR CONSULTANT
MOBILE: +47 41 33 43 95
EMAIL: LINUS.N...@KREYER.NO

KREYER AS · STOCKFLETHS GATA 48 · 0461 · OSLO
WWW.KREYER.NO

Alessio Stalla

unread,
May 19, 2015, 7:54:46 AM5/19/15
to manydesign...@googlegroups.com
I wrote the procedure to build a release in our wiki: https://tt.manydesigns.com/wiki/Wiki.jsp?page=Building%20Portofino%20from%20source

Linus Nikander

unread,
May 19, 2015, 7:57:15 AM5/19/15
to manydesign...@googlegroups.com
Great. I got it up and running with a mix of 4.1.2 and the 4.1.3 database-jar though.

I have run into  a new problem, I get 'Skipped column NAME-OF-COLUMN with unknown type DATE (JDBC: 91). Can't the application handle Oracle Dates?

/L

Linus Nikander

unread,
May 19, 2015, 8:02:36 AM5/19/15
to manydesign...@googlegroups.com
btw, all hibernate queries are being written to the log at the moment. Thought I'd mention it since you probably don't want that making it all the way to release.

/L

Alessio Stalla

unread,
May 19, 2015, 8:11:36 AM5/19/15
to manydesign...@googlegroups.com
It does handle dates. "with unknown type" means that the type of the column is not among the types that the database declares to support. Apparently, Oracle can map the DATE type either to java.sql.Date (JDBC 91) or java.sql.Timestamp (JDBC 93). Probably in your installation it is doing the latter. I don't think this poses a problem in the application itself (but I might be proven wrong), however it is confusing for the table configuration GUI, which is why you see that message.

On Tue, May 19, 2015 at 1:57 PM, Linus Nikander <linus.n...@lnc.no> wrote:

Alessio Stalla

unread,
May 19, 2015, 8:14:45 AM5/19/15
to manydesign...@googlegroups.com
It's always been like that, in the bundled hibernate.properties, hibernate.show_sql=true. If you know about it, you can easily set it to false; on the other hand, if you don't know Hibernate and a query fails for some reason, you don't have to learn about hibernate.show_sql.

Linus Nikander

unread,
May 19, 2015, 8:23:25 AM5/19/15
to manydesign...@googlegroups.com
here and now, seeing the queries helped me a lot. If you have a busy site the log can grow quite large though. Good to know, i'll tune that before we go into prod.

/L

mmussa...@gmail.com

unread,
Sep 9, 2015, 4:36:25 AM9/9/15
to manydesigns-portofino
Hello, Alessio!
I have run into the same problem. In table configuration GUI I don't see the columns with date type (oracle database). I see them in the crud page, but I need to change date format. How can it be done? Do you have any ideas?

Thank you in advance!

Alessio Stalla

unread,
Sep 9, 2015, 6:10:17 AM9/9/15
to manydesign...@googlegroups.com
Hi! Do you see anything in the logs about those columns? In my Oracle test database (Oracle XE 10), I have both DATE and TIMESTAMP columns and I can see them (albeit all with a JDBC type of 93, TIMESTAMP).
Also, are you using Portofino 4.1.3?

mmussa...@gmail.com

unread,
Sep 9, 2015, 11:54:12 PM9/9/15
to manydesigns-portofino
In the logs I don't see anything about those columns. Yes, Portofino 4.1.3.
Oracle Database 11g EE, release 11.2.0.4.0
driver version 12.1
warning is 'Skipped column column_name with unknown type DATE (JDBC:91)'

Alessio Stalla

unread,
Sep 10, 2015, 5:54:29 AM9/10/15
to manydesign...@googlegroups.com
Actually our Oracle test installation is Oracle XE for Linux version 11.2 (the driver reports it as Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production).
Anyway, I tried both with an old driver (10g) as well as with the latest driver from Oracle (12.1.0.2.0). Only with the latter I could reproduce the problem. So it is only with particular combinations of Liquibase, Oracle JDBC driver and Oracle database version that this issue arises. Date handling seems to vary across driver versions: v12 reports some columns as TIMESTAMP(3) which Liquibase cannot decode.
I have put a fix in place for version 4.2. It is due to be released in a couple of weeks. In the meantime you can resort to editing portofino-model.xml manually for those columns - not the best experience, but at least you can go forward. Or you might try with an older Oracle driver. I will also report the problem to the Liquibase issue tracker. Thanks for reporting!

mmussa...@gmail.com

unread,
Sep 10, 2015, 6:55:20 AM9/10/15
to manydesigns-portofino
Thank you very much! In portofino-model.xml I've changed columntype to Timestamp and jdbctype to 93; and it worked

Alessio Stalla

unread,
Sep 15, 2015, 3:48:14 AM9/15/15
to manydesign...@googlegroups.com
Reported to Liquibase: https://liquibase.jira.com/browse/CORE-2526

Cheers
A.

On Thu, Sep 10, 2015 at 12:55 PM, <mmussa...@gmail.com> wrote:
Thank you very much! In portofino-model.xml I've changed columntype to Timestamp and jdbctype to 93; and it worked
Reply all
Reply to author
Forward
0 new messages