Issues with JDBC connection.

544 views
Skip to first unread message

Mahesh Vangala

unread,
Jul 7, 2017, 11:14:27 PM7/7/17
to i2b2 Install Help
Hello -

I am working towards dockerizing i2b2.
Towards this goal, I have successfully launched a oracle database 11.2 xe container and created all the required users (for example, i2b2demodata with pass demouser). I made sure everything works by going to localhost:8080/apex (container named "ORACLE" port 8080 is mapped to host 8080) and things seem to be sane.

Now, I have a i2b2 server container with ORACLE linked (--link ORACLE:ORACLE) and I am trying to run 

ant -f data_build.xml create_crcdata_tables_release_1-7 


However, this errors out with:

Buildfile: /usr/local/bin/i2b2/i2b2-data/edu.harvard.i2b2.data/Release_1-7/NewInstall/Crcdata/data_build.xml


init:


create_crcdata_tables_release_1-7:


BUILD FAILED

/usr/local/bin/i2b2/i2b2-data/edu.harvard.i2b2.data/Release_1-7/NewInstall/Crcdata/data_build.xml:41: java.sql.SQLException: ORA-01017: invalid username/password; logon denied


        at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)

        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)

        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:283)

        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278)

        at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:790)

        at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:362)

        at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:420)

        at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)

        at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)

        at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)

        at org.apache.tools.ant.taskdefs.JDBCTask.getConnection(JDBCTask.java:366)

        at org.apache.tools.ant.taskdefs.SQLExec.getConnection(SQLExec.java:963)

        at org.apache.tools.ant.taskdefs.SQLExec.execute(SQLExec.java:628)

        at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.lang.reflect.Method.invoke(Method.java:498)

        at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)

        at org.apache.tools.ant.Task.perform(Task.java:348)

        at org.apache.tools.ant.Target.execute(Target.java:435)

        at org.apache.tools.ant.Target.performTasks(Target.java:456)

        at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1405)

        at org.apache.tools.ant.Project.executeTarget(Project.java:1376)

        at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)

        at org.apache.tools.ant.Project.executeTargets(Project.java:1260)

        at org.apache.tools.ant.Main.runBuild(Main.java:853)

        at org.apache.tools.ant.Main.startAnt(Main.java:235)

        at org.apache.tools.ant.launch.Launcher.run(Launcher.java:285)

        at org.apache.tools.ant.launch.Launcher.main(Launcher.java:112)


Total time: 0 seconds



My db.properties file looks like:

# Database setup parameters 

db.type=oracle

db.username=i2b2demodata

db.password=demouser

db.server=ORACLE:1521:xe

db.driver=oracle.jdbc.driver.OracleDriver

db.url=jdbc:oracle:thin:@ORACLE:1521:xe

db.project=demo



I made sure I could see the linked ORACLE content from i2b2 container, I have tested,


and it lists the html page (like, I would expect).

I am at my wits end to figure out why jdbc connection fails.

Please let me know.

Thanks,
Mahesh

Peter Beninato

unread,
Jul 10, 2017, 11:02:18 AM7/10/17
to i2b2-ins...@googlegroups.com

Hello,

 

For many cells under etc/jboss/ there are *ds.xml files. Did you edit any of those? Based on the error you may want to look at the CRC cell.

 

-Peter

--
You received this message because you are subscribed to the Google Groups "i2b2 Install Help" group.
To unsubscribe from this group and stop receiving emails from it, send an email to i2b2-install-h...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Mendis, Michael E.

unread,
Jul 10, 2017, 11:06:01 AM7/10/17
to i2b2-ins...@googlegroups.com

Can you logon using sqlplus i2b2demodata/demouser@XE?

 

-mike

The information in this e-mail is intended only for the person to whom it is
addressed. If you believe this e-mail was sent to you in error and the e-mail
contains patient information, please contact the Partners Compliance HelpLine at
http://www.partners.org/complianceline . If the e-mail was sent to you in error
but does not contain patient information, please contact the sender and properly
dispose of the e-mail.

Hubert Hickman

unread,
Jul 11, 2017, 11:32:10 AM7/11/17
to i2b2 Install Help
One other thing to check (I have seen some issues with this).  The Oracle JDBC driver in the data build scripts is really old - ojdbc14.jar  - look in 

dev-i2b2-data-master/edu.harvard.i2b2.data/Release_1-7/NewInstall


To see what you are using.  I've seen this error message trying to connect to an Oracle 12c database with that old JDBC driver.  Upgrade that driver file and I bet it will work.  I think older versions of the Oracle client may have sent the password in all uppercase and newer Oracle versions have case sensitive passwords.


Upgrade to the correct ojdbc driver file in the directory and give it another whirl.  I used the ojdbc7.jar file.  NOTE also you will to change the data_build.xml file in each directory (Crcdata, etc.)  as follows:

 <target name="init"  description="Prepare for build">

                <path id="classpath">

                        <!-- <pathelement location="../ojdbc14.jar" /> -->

                        <pathelement location="../ojdbc7.jar" />

                        <pathelement location="../sqljdbc.jar"/>

                        <pathelement location="../postgresql-9.2-1002.jdbc4.jar"/>

                </path>

        </target>



Hope this helps!


Hubert Hickman

Senior Associate

Essex Management, LLC

Mahesh Vangala

unread,
Jul 11, 2017, 2:27:52 PM7/11/17
to i2b2-ins...@googlegroups.com
Hello Michael -


Your suggestion to test out credentials right on the oracle container helped, indeed. Apparently, apex is a front end application where I have created these users. I have mistakenly presumed those users will be part of database.

Creating users right on command line using sqlplus did the trick.

Thank you so much for other users as well who took time in debugging this.

Glad to see such an enthusiastic and supportive crowd :)

Sincerely,
Mahesh

Mahesh Vangala

unread,
Jul 18, 2017, 2:24:11 PM7/18/17
to i2b2-ins...@googlegroups.com
Hello i2b2 google group -

I encountered another dead end in dockerizing i2b2 with respect to oracle, with demo data.

I have 3 docker containers

1) oracle-11g-xe container named ORACLE
2) i2b2-core-server named CORE (data installation, server common, PM cells installed)
3) i2b2-web-server named WEB (php, apache, i2b2 admin module installed) (port 80 exposed)

I have, CORE linked with ORACLE running just fine.
I have, WEB linked with CORE.

When I visit http://localhost/admin/, this is what I see,

Inline image 1

I have exact creds I gave for PM cell in Oracle, which is, username#i2b2pm and pass#demouser.

However, I am not sure, what value goes in i2b2 host here, with respect to, i2b2_config_data.js .

I get "either PM cell is down" or "the address in properties file is inappropriate" error.

Could you let me know what value goes under i2b2 Host?

As far as I looked in docker logs, I did not see anything fishy with respect to i2b2 core container or oracle container.

Thanks in advance for your time.

Regards,
Mahesh

Peter Beninato

unread,
Jul 18, 2017, 3:19:49 PM7/18/17
to i2b2-ins...@googlegroups.com

Hello,

 

We dockerized one of our i2b2 instances recently, I don’t think the dev folks are yet on the google group, but I reached out to them and they had this nugget of info.

 

 

 

 

Hi Peter,

 

Here's what we have for i2b2_config_data.js. The domain comes from the pm_hive_data table. "wildlfy" in "urlCellPM" below is the wildfly/jboss container service name.

 

{

        urlProxy: "index.php",

        urlFramework: "js-i2b2/",

        lstDomains: [

                {

                        domain: "octri",

                        name: "OHSU",

                        debug: true,

                        allowAnalysis: true,

                        urlCellPM: "http://wildfly:9090/i2b2/services/PMService/"

                }

        ]

}

 

Maybe that will get them a little further.

 

Weldon

--

Kavishwar Wagholikar

unread,
Jul 18, 2017, 3:37:24 PM7/18/17
to i2b2 Install Help, beni...@ohsu.edu
Hi Mahesh,
Are you using the docker web and jboss containers from docker hub, or or they different?

kavi

---------------------------------------------------------

Kavishwar B. Wagholikar, MD PhD

Assistant Professor of Medicine, Harvard Medical School

Assistant in Computer Science, Massachusetts General Hospital

Mahesh Vangala

unread,
Jul 25, 2017, 3:45:25 PM7/25/17
to i2b2 Install Help, beni...@ohsu.edu
Hello Kavi -

Sorry for the delay on my end.
Yes, I am using jboss base image. Here's my dockerfile




However, when I visit http://localhost:9090/i2b2/services/PMService, I see

<soapenv:Reason xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
<soapenv:Text xml:lang="en-US">
The endpoint reference (EPR) for the Operation not found is /i2b2/services/PMService and the WSA Action = null. If this EPR was previously reachable, please contact the server administrator.
</soapenv:Text>
</soapenv:Reason>

There is a email chain with identical problem but there is not much useful information in that thread. (https://groups.google.com/forum/#!topic/i2b2-install-help/PaunTmccsc8).

I am clueless why PM cell is not working. Any help is much appreciated.

Thank you,
Mahesh

Catherine Jenifer R

unread,
Oct 6, 2017, 2:20:28 PM10/6/17
to i2b2 Install Help
Hi Mahesh,

Did you find a solution for this?

Thanks,
Catherine

Mahesh Vangala

unread,
Oct 6, 2017, 2:40:14 PM10/6/17
to i2b2-ins...@googlegroups.com
Hello Catherine -

Yes, I did. I have working i2b2 now.
Thanks.

- Mahesh

--
You received this message because you are subscribed to a topic in the Google Groups "i2b2 Install Help" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/i2b2-install-help/s7yuasIhJpk/unsubscribe.
To unsubscribe from this group and all its topics, send an email to i2b2-install-help+unsubscribe@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages