Subject:Type2 Authentication missing DLL Author:Mike Lucas Date:09 Apr 2009 08:47 AM
Hello,
My company recently purchased licenses for Stylus Studio, and I've been changed with creating xQueries to build XML from our SQL Server 2005 database. I am able to run queries using an existing username and password, but I would like to use a "Trusted Connection" instead. I saw in this thread (http://www.stylusstudio.com/SSDN/default.asp?action=9&read=5777&fid=23) that I need to use ;AuthenticationMethod=Type2, a space for the username, and no password. When I try this I receive this error message.
NTLM (type-2) Authentication was requested but th requried DDJDBCAuth04.dll was not found on the path specified by the java.library.path system property.
com.ddtek.xquery.db2util.UtilException: NTLM (type-2) Authentication was requested but the required DDJDBCAuth04.dll was not found on the path specified by the java.library.path system property.
at com.ddtek.util.UtilType2DLLInterface04.<init>(Unknown Source)
at com.ddtek.xquery.sqlserverutil.UtilType2SecurityContext.<init>(Unknown Source)
at com.ddtek.xquery.sqlserverutil.UtilSecurityContextCreator.createType2SecurityContext(Unknown Source)
at com.ddtek.xquery.sqlserverutil.UtilSecurityContextCreator.createType2SecurityContext(Unknown Source)
at com.ddtek.xquery.jdbc.sqlserver.tds.TDSConnection.createSecurityContext(Unknown Source)
at com.ddtek.xquery.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)
at com.ddtek.xquery.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
at com.ddtek.xquery.jdbc.sqlserverbase.BaseConnection.doConnect(Unknown Source)
at com.ddtek.xquery.jdbc.sqlserverbase.BaseConnection.connect(Unknown Source)
at com.ddtek.xquery.jdbc.sqlserverbase.BaseConnection.setupImplConnection(Unknown Source)
at com.ddtek.xquery.jdbc.sqlserverbase.BaseConnection.open(Unknown Source)
at com.ddtek.xquery.jdbc.sqlserverbase.BaseDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at com.ddtek.xquery.extractor.ExtractorDataSource.createJDBCConnection(ExtractorDataSource.java:257)
at com.ddtek.xquery.extractor.ExtractorDataSource.getConnection(ExtractorDataSource.java:120)
at com.ddtek.xquery.mediator.SqlAdapter.connect(SqlAdapter.java:68)
at com.ddtek.xquery.mediator.MediatorConnection.connect(MediatorConnection.java:85)
at com.ddtek.xquery3.xqj.DDXQConnection.<init>(DDXQConnection.java:81)
at com.ddtek.xquery3.xqj.DDXQDataSource._getConnection(DDXQDataSource.java:1495)
at com.ddtek.xquery3.xqj.DDXQDataSource.getConnection(DDXQDataSource.java:837)
Is it possible the DLL was not installed, or is there a different piece of software I need for the java database connection authentication?
Subject:Type2 Authentication missing DLL Author:Mike Lucas Date:09 Apr 2009 09:20 AM
I would like to also add that my company follows a standard of using Windows authentication instead of Mixed Mode authentication, and I doubt I can change their minds. My windows login is part of an AD group if it is possible I can use that for the username.
DataDirect XQuery fully supports SQL Server's Windows authentication.
With Stylus Studio 2009R2 you don't need to add ;AuthenticationMethod=Type2, but simply leavomg user and password empty will automatically use your windows credentials.
Said that we are able to replicate the problem in Stylus Studio and we are investigating it.
You should still be able to run the query using the command line interface; start with a query you have run successfully with the database credentials then open a console window and type the following
SET PATH=%PATH%;"c:\Program Files\DataDirect Integration Suite 2009 Release 2\DataDirect XQuery\lib"
SET jar="c:\Program Files\DataDirect Integration Suite 2009 Release 2\DataDirect XQuery\lib\ddxq.jar"
java -jar %jar% -jdbc "jdbc:xquery:sqlserver://localhost:1433;databaseName=pubs;" myXQuery.xq
As you can see with -jdbc switch you specify the database connection without user/password.
Subject:Type2 Authentication missing DLL Author:Mike Lucas Date:13 Apr 2009 07:40 AM
Thank you for replying Ivan. I tried using the commands you listed in the previous post, but my paths are different from what you listed. My folder structure to ddxq.jar is C:\Program Files\Stylus Studio 2009 XML Enterprise Suite\Components\DataDirect XQuery\lib, and I do not have folder "DataDirect Integration Suite 2009 Release 2".
I change the folder structure and linked to my database. When I ran the java line, I recieved this error:
Registry key 'Software\Javasoft\Java Runtime Environment\CurrentVersion' has value '1.6', but '1.5' is required.
Error: could not find java.dll
Error: could not find Java 2 Runtime Environment
I have java 1.4, 1.5, and 1.6 installed on my system, so I do not know why java.dll could not be found.
As an added question, does Stylus Studio accept database connections through Active Directory groups?
I assumed you were running the Data Integration Suite rather then Enterprise Edition.
The suggestion applies to both you just need to use slight different folders as you have realized.
The error you have reported has nothing to with Stylus Studio.
You have multiple Java Virtual Machine installed in your system, most likely the last one installed was 1.6, its installer set the following registry key
But it looks like that your PATH has a older Java version
You can easily get around the problem by prepending Java 1.6 in your PATH
SET PATH="c:\Program Files\Java\jre6\bin";%PATH%
Stylus Studio doesn't not support Active Directory, but the underline DataDirect XQuery component does, have a look in the user guide at chapter 8 "Securing Data Source Connections"
This has been extremely helpful. I was able to run the query, but it gave me the same dll error message as before. I found the dll while looking for the PDF stated above. I guess I will need to wait till this error is checked out.
Unfortunately, now when I run a query through the command prompt, it says my copy of DataDirect XQuery has expired. My manager is checking with the billing department about what we purchased with our licenses. I can still run Stylus Studio, and verified my license in the software.