Как я могу связать Crystal Reports 2011 с Apache Tomcat 7 от JNDI?

Я хочу использовать Crystal Reports для создания отчетов для проекта в Java, я должен использовать соединение JNDI, чтобы использовать Apache Tomcat 7 в качестве поставщика JNDI, я искал несколько учебных пособий, но любой из них достаточно явно, я бы как учебник, который помогает мне сделать это.

1 ответ

Вот что работает для меня:

<Resource name="jdbc/MyDataSourceSameNameOfWhatIsInTnsNames"
auth="Container"
type="javax.sql.DataSource"
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
username="MyUserName"
password="MyPassword"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@  (DESCRIPTION =    (ADDRESS_LIST =      (ADDRESS = (PROTOCOL = TCP)(HOST = My.Ip.From.Host)(PORT = 1523))    )    (CONNECT_DATA =      (SERVICE_NAME = TESTES)    )  )"
maxWait="1000"
removeAbandoned="true"
maxActive="30"
maxIdle="10"
removeAbandonedTimeout="60"
logAbandoned="true"/>

Приведенное выше свойство "url" после "@" имеет то же значение, что и мой TNSNAMES.ora. Хитрость заключается в том, что вам нужно подключаться из Crystal Reports, используя соединение Oracle и используя имя TNS, которое совпадает с именем JNDI, и сохранять отчет после подключения этой TNS.

При выполнении из Java, он ищет JNDI с тем же именем, хранящимся в отчете, и все работает нормально.

Еще одна вещь: я должен был поместить context.xml в папку моего приложения (...tomcat/webapps/MyAppName/META-INF/context.xml).

Другие вопросы по тегам