OK excellent thanks, that helps - I get a little further now. I had tried a full path in the connection url but the schema json only had a relative path.
However now squirrel causes the stack below and moans about it not being a valid JDBC 3.0 driver? PDI Still errors too. (Can get that trace if its useful?)
java.lang.RuntimeException: todo: implement this method
at net.hydromatic.optiq.jdbc.Helper.todo(Helper.java:40)
at net.hydromatic.optiq.jdbc.OptiqDatabaseMetaData.supportsSchemasInDataManipulation(OptiqDatabaseMetaData.java:301)
at net.sourceforge.squirrel_sql.fw.sql.SQLDatabaseMetaData.supportsSchemasInDataManipulation(SQLDatabaseMetaData.java:339)
at net.sourceforge.squirrel_sql.fw.sql.DatabaseObjectInfo.generateQualifiedName(DatabaseObjectInfo.java:197)
at net.sourceforge.squirrel_sql.fw.sql.DatabaseObjectInfo.<init>(DatabaseObjectInfo.java:77)
at net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.ObjectTreeModel$RootNode.createDbo(ObjectTreeModel.java:381)
at net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.ObjectTreeModel$RootNode.<init>(ObjectTreeModel.java:376)
at net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.ObjectTreeModel.createRootNode(ObjectTreeModel.java:271)
at net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.ObjectTreeModel.<init>(ObjectTreeModel.java:87)
at net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.ObjectTree.<init>(ObjectTree.java:133)
at net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.ObjectTreePanel.createGUI(ObjectTreePanel.java:906)
at net.sourceforge.squirrel_sql.client.session.mainpanel.objecttree.ObjectTreePanel.<init>(ObjectTreePanel.java:131)
at net.sourceforge.squirrel_sql.client.session.mainpanel.ObjectTreeTab.getComponent(ObjectTreeTab.java:83)
at net.sourceforge.squirrel_sql.client.gui.session.MainPanel.addMainPanelTab(MainPanel.java:202)
at net.sourceforge.squirrel_sql.client.gui.session.MainPanel.<init>(MainPanel.java:109)
at net.sourceforge.squirrel_sql.client.gui.session.MainPanelFactory.createMainPanel(MainPanelFactory.java:27)
at net.sourceforge.squirrel_sql.client.gui.session.SessionPanel.createGUI(SessionPanel.java:466)
at net.sourceforge.squirrel_sql.client.gui.session.SessionPanel.initialize(SessionPanel.java:116)
at net.sourceforge.squirrel_sql.client.gui.session.SessionInternalFrame.createGUI(SessionInternalFrame.java:123)
at net.sourceforge.squirrel_sql.client.gui.session.SessionInternalFrame.<init>(SessionInternalFrame.java:53)
at net.sourceforge.squirrel_sql.client.gui.WindowManager.createInternalFrame(WindowManager.java:360)
at net.sourceforge.squirrel_sql.client.mainframe.action.ConnectToAliasCommand$Runner.run(ConnectToAliasCommand.java:391)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:666)
at java.awt.EventQueue.access$400(EventQueue.java:81)
at java.awt.EventQueue$2.run(EventQueue.java:627)
at java.awt.EventQueue$2.run(EventQueue.java:625)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:636)
at net.sourceforge.squirrel_sql.client.Main$1.dispatchEvent(Main.java:99)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
at java.awt.Dialog$1.run(Dialog.java:1044)
at java.awt.Dialog$3.run(Dialog.java:1096)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Dialog.show(Dialog.java:1094)
at javax.swing.JOptionPane.showOptionDialog(JOptionPane.java:853)
at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:650)
at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:621)
at net.sourceforge.squirrel_sql.client.session.Session$3.run(Session.java:1045)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:666)
at java.awt.EventQueue.access$400(EventQueue.java:81)
at java.awt.EventQueue$2.run(EventQueue.java:627)
at java.awt.EventQueue$2.run(EventQueue.java:625)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:636)
at net.sourceforge.squirrel_sql.client.Main$1.dispatchEvent(Main.java:99)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)