I'm using ORDS 3.0.6 standalone to front Apex 5.0 running on my local Personal Oracle 11gR2. I'm writing my very first Apex application and trying to create my first page - a master/detail form. So it shows the form for me to specify the Master table and I select one and press Next. Then I get a 500 error page. On the ORDS console, I see:
Oct 20, 2016 4:54:09 PM oracle.dbtools.http.errors.ErrorPageFilter log
SEVERE: java.sql.SQLRecoverableException: No more data to read from socket InternalServerException [statusCode=500, reasons=[]]
at oracle.dbtools.apex.ModApexContext.handleError(ModApexContext.java:273)
at oracle.dbtools.apex.OWA.execute(OWA.java:206)
at oracle.dbtools.apex.ModApex.handleRequest(ModApex.java:267)
at oracle.dbtools.apex.ModApex.doPost(ModApex.java:174)
at oracle.dbtools.apex.ModApex.service(ModApex.java:102)
at oracle.dbtools.http.entrypoint.Dispatcher.dispatch(Dispatcher.java:124)
at oracle.dbtools.http.entrypoint.EntryPoint$FilteredServlet.service(EntryPoint.java:236)
at oracle.dbtools.http.filters.FilterChainImpl.doFilter(FilterChainImpl.java:73)
at oracle.dbtools.http.forwarding.QueryFilteringRewrite.doFilter(QueryFilteringRewrite.java:89)
at oracle.dbtools.http.filters.HttpFilter.doFilter(HttpFilter.java:46)
at oracle.dbtools.http.filters.FilterChainImpl.doFilter(FilterChainImpl.java:64)
at oracle.dbtools.http.forwarding.ForwardingFilter.doFilter(ForwardingFilter.java:68)
at oracle.dbtools.http.filters.HttpFilter.doFilter(HttpFilter.java:46)
at oracle.dbtools.http.filters.FilterChainImpl.doFilter(FilterChainImpl.java:64)
at oracle.dbtools.http.cors.CORSPreflightFilter.doFilter(CORSPreflightFilter.java:67)
at oracle.dbtools.http.filters.HttpFilter.doFilter(HttpFilter.java:46)
at oracle.dbtools.http.filters.FilterChainImpl.doFilter(FilterChainImpl.java:64)
at oracle.dbtools.http.cookies.auth.CookieSessionCSRFFilter.doFilter(CookieSessionCSRFFilter.java:77)
at oracle.dbtools.http.filters.HttpFilter.doFilter(HttpFilter.java:46)
at oracle.dbtools.http.filters.FilterChainImpl.doFilter(FilterChainImpl.java:64)
at oracle.dbtools.http.auth.AuthenticationFilter.authenticate(AuthenticationFilter.java:89)
at oracle.dbtools.http.auth.AuthenticationFilter.doFilter(AuthenticationFilter.java:62)
at oracle.dbtools.http.filters.HttpFilter.doFilter(HttpFilter.java:46)
at oracle.dbtools.http.filters.FilterChainImpl.doFilter(FilterChainImpl.java:64)
at oracle.dbtools.url.mapping.RequestMapperBase.doFilter(RequestMapperBase.java:55)
at oracle.dbtools.url.mapping.CompositeMapper$RequestMapperFilterChain.doFilter(CompositeMapper.java:144)
at oracle.dbtools.url.mapping.RequestMapperBase.doFilter(RequestMapperBase.java:55)
at oracle.dbtools.url.mapping.CompositeMapper.doFilter(CompositeMapper.java:37)
at oracle.dbtools.url.mapping.URLMappingBase.doFilter(URLMappingBase.java:89)
at oracle.dbtools.url.mapping.filter.URLMappingFilter.doFilter(URLMappingFilter.java:88)
at oracle.dbtools.http.filters.HttpFilter.doFilter(HttpFilter.java:46)
at oracle.dbtools.http.filters.FilterChainImpl.doFilter(FilterChainImpl.java:64)
at oracle.dbtools.http.locale.LocaleFilter.doFilter(LocaleFilter.java:59)
at oracle.dbtools.http.filters.HttpFilter.doFilter(HttpFilter.java:46)
at oracle.dbtools.http.filters.FilterChainImpl.doFilter(FilterChainImpl.java:64)
at oracle.dbtools.http.cors.CORSResponseFilter.doFilter(CORSResponseFilter.java:83)
at oracle.dbtools.http.filters.HttpResponseFilter.doFilter(HttpResponseFilter.java:45)
at oracle.dbtools.http.filters.FilterChainImpl.doFilter(FilterChainImpl.java:64)
at oracle.dbtools.http.errors.ErrorPageFilter.doFilter(ErrorPageFilter.java:81)
at oracle.dbtools.http.filters.HttpFilter.doFilter(HttpFilter.java:46)
at oracle.dbtools.http.filters.FilterChainImpl.doFilter(FilterChainImpl.java:64)
at oracle.dbtools.http.auth.ForceAuthFilter.doFilter(ForceAuthFilter.java:44)
at oracle.dbtools.http.filters.HttpFilter.doFilter(HttpFilter.java:46)
at oracle.dbtools.http.filters.FilterChainImpl.doFilter(FilterChainImpl.java:64)
at oracle.dbtools.http.filters.Filters.filter(Filters.java:47)
at oracle.dbtools.http.entrypoint.EntryPoint.service(EntryPoint.java:83)
at oracle.dbtools.http.entrypoint.EntryPointServlet.service(EntryPointServlet.java:47)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at oracle.dbtools.rt.web.HttpEndpointBase.dispatchableServices(HttpEndpointBase.java:123)
at oracle.dbtools.rt.web.HttpEndpointBase.service(HttpEndpointBase.java:85)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:751)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:566)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:219)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1111)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:498)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1045)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:199)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:109)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:98)
at org.eclipse.jetty.server.Server.handle(Server.java:461)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:284)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:244)
at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:534)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:607)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:536)
at java.lang.Thread.run(Unknown Source)
Caused by: java.sql.SQLRecoverableException: No more data to read from socket
at oracle.jdbc.driver.T4CMAREngineStream.unmarshalUB1(T4CMAREngineStream.java:456)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:397)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:257)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:587)
at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:220)
at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:48)
at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:938)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1150)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:4802)
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:4905)
at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:5631)
at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1385)
at sun.reflect.GeneratedMethodAccessor12.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at oracle.ucp.jdbc.proxy.StatementProxyFactory.invoke(StatementProxyFactory.java:353)
at oracle.ucp.jdbc.proxy.PreparedStatementProxyFactory.invoke(PreparedStatementProxyFactory.java:178)
at oracle.ucp.jdbc.proxy.CallableStatementProxyFactory.invoke(CallableStatementProxyFactory.java:136)
at com.sun.proxy.$Proxy38.execute(Unknown Source)
at oracle.dbtools.apex.OWA.execute(OWA.java:169)
... 67 more
Any ideas? I've seen some information suggesting that this is a problem with the jdbc driver, but I'm using the one (ojdbc7) supplied with ORDS which is the latest, I think. I'm running ORDS standalone with Java 8 - latest available.