[
https://issues.jboss.org/browse/TEIIDDES-1625?page=com.atlassian.jira.plu...
]
Steven Hawkins commented on TEIIDDES-1625:
------------------------------------------
However, it does demonstrate a brittleness in teiid's code in its
reliance on version number
I would say that it's only brittle with regards to where the version number is coming
from and for the most part this is only an issue with using non-artifact jars. We could
look at using a maven source pre-processing to hard code these values as Java constants,
but really that just moves the target a little. It's still possible to use an
inappropriate classpath to accidentally override those constants.
The odd thing is that version is also gleaned from a serialized
handshake object and this
correctly sets the client version to 8.3.0.Final.
Consequently, although the client version is set correctly the server version is set to
'$ {project.version}
I don't follow you here. Are you talking about from the perspective of the client or
the server? The handshake flow starts with the server where the version should be set to
the project version on the server side. That flows to the client and the client records
that as the server version. The client then updates the handshake version to its own
version and sends it back, then the server records that response version as the client
version.
Maybe consider avoiding the use of version variables in the code and
instead prefer to remove SealedObject message wrapping entirely. If the server is older
and does return SealedObject messages then simply test the class of the message content
and unseal accordingly. Difficult to see the benefit of keeping such code in the
client/server if it is effectively deprecated.
The whole point is to maintain backwards/forwards compatibility. An 8.3 client connecting
to an 8.2 server and vice versa should still work. For simply querying functionality we
desire as much continuity as possible. If you simply remove sealed object handling from
the client/server then a later client against a newer server or an older client against a
newer server will no longer work.
Unable to create JDBC connection to Teiid 8.3 Final from Designer
-----------------------------------------------------------------
Key: TEIIDDES-1625
URL:
https://issues.jboss.org/browse/TEIIDDES-1625
Project: Teiid Designer
Issue Type: Bug
Reporter: Barry LaFond
Assignee: Paul Richardson
Fix For: 8.1
Upgraded Teiid designer to 8.3 Final bits
Tried to Preview a table and received following exception:
!ENTRY org.teiid.designer.dqp.ui 4 0 2013-03-19 11:33:24.518
!MESSAGE javax.crypto.SealedObject cannot be cast to
org.teiid.client.security.LogonResult
!STACK 0
java.lang.ClassCastException: javax.crypto.SealedObject cannot be cast to
org.teiid.client.security.LogonResult
at sun.proxy.$Proxy27.logon(Unknown Source)
at org.teiid.net.socket.SocketServerConnection.logon(SocketServerConnection.java:173)
at
org.teiid.net.socket.SocketServerConnection.selectServerInstance(SocketServerConnection.java:125)
at
org.teiid.net.socket.SocketServerConnection.<init>(SocketServerConnection.java:92)
at
org.teiid.net.socket.SocketServerConnectionFactory.getConnection(SocketServerConnectionFactory.java:312)
at org.teiid.jdbc.SocketProfile.connect(SocketProfile.java:54)
at org.teiid.jdbc.TeiidDriver.connect(TeiidDriver.java:107)
at org.teiid.jdbc.TeiidDriver.connect(TeiidDriver.java:1)
at
org.teiid.datatools.connectivity.TeiidJDBCConnection.createConnection(TeiidJDBCConnection.java:83)
at
org.eclipse.datatools.connectivity.DriverConnectionBase.internalCreateConnection(DriverConnectionBase.java:105)
at
org.eclipse.datatools.connectivity.DriverConnectionBase.open(DriverConnectionBase.java:54)
at
org.eclipse.datatools.connectivity.drivers.jdbc.JDBCConnection.open(JDBCConnection.java:73)
at
org.teiid.datatools.connectivity.TeiidJDBCConnectionFactory.createConnection(TeiidJDBCConnectionFactory.java:23)
at
org.eclipse.datatools.connectivity.internal.ConnectionFactoryProvider.createConnection(ConnectionFactoryProvider.java:83)
at
org.eclipse.datatools.connectivity.internal.ConnectionProfile.createConnection(ConnectionProfile.java:359)
at
org.teiid.designer.runtime.ui.preview.PreviewDataWorker.getSqlConnection(PreviewDataWorker.java:621)
at
org.teiid.designer.runtime.ui.preview.PreviewDataWorker.internalRun(PreviewDataWorker.java:398)
at
org.teiid.designer.runtime.ui.preview.PreviewDataWorker.run(PreviewDataWorker.java:263)
at
org.teiid.designer.runtime.ui.preview.PreviewTableDataContextAction.run(PreviewTableDataContextAction.java:99)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira