Advertisement
Guest User

Untitled

a guest
Jan 17th, 2016
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.38 KB | None | 0 0
  1. <GlobalNamingResources>
  2. <Resource name="jdbc/ApplicationContext_DatabaseName" auth="Container" type="javax.sql.DataSource"
  3. username="dbUsername" password="dbPasswd"
  4. url="jdbc:postgresql://localhost/dbname"
  5. driverClassName="org.postgresql.Driver"
  6. initialSize="5" maxWait="5000"
  7. maxActive="120" maxIdle="5"
  8. validationQuery="select 1"
  9. poolPreparedStatements="true"/>
  10. </GlobalNamingResources/>
  11.  
  12. <Context path="/ApplicationContext" ... >
  13. <!--
  14. "global" attribute links to GlobalNamingResources in the ${catalina.base}/conf/server.xml (server administrator team)
  15. "name" attribute is relative to the application-private JNDI context java:comp/env/ and is looked up from the java web application (application developer team)
  16. -->
  17. <ResourceLink global="jdbc/ApplicationContext_DatabaseName" name="jdbc/DatabaseName" type="javax.sql.DataSource"/>
  18. </Context>
  19.  
  20. <resource-ref>
  21. <description>DatabaseName's Datasource</description>
  22. <res-ref-name>jdbc/DatabaseName</res-ref-name>
  23. <res-type>javax.sql.DataSource</res-type>
  24. <res-auth>Container</res-auth>
  25. </resource-ref>
  26.  
  27. <jee:jndi-lookup id="DatabaseNameDataSource"
  28. jndi-name="jdbc/DatabaseName"
  29. expected-type="javax.sql.DataSource" />
  30.  
  31. <GlobalNamingResources>
  32. <Resource name="jdbc/ApplicationContext_DatabaseName1" ... />
  33. <Resource name="jdbc/ApplicationContext_DatabaseName2" ... />
  34. ...
  35. </GlobalNamingResources/>
  36.  
  37. <Context path="/ApplicationContext" ... >
  38. <ResourceLink global="jdbc/ApplicationContext_DatabaseName1" name="jdbc/DatabaseName1" ... />
  39. <ResourceLink global="jdbc/ApplicationContext_DatabaseName2" name="jdbc/DatabaseName2" ... />
  40. ...
  41. </Context>
  42.  
  43. <resource-ref>
  44. <description>DatabaseName1's Datasource</description>
  45. <res-ref-name>jdbc/DatabaseName1</res-ref-name> ...
  46. </resource-ref>
  47. <resource-ref>
  48. <description>DatabaseName2's Datasource</description>
  49. <res-ref-name>jdbc/DatabaseName2</res-ref-name> ...
  50. </resource-ref>
  51. ...
  52.  
  53. <jee:jndi-lookup id="DatabaseName1DataSource"
  54. jndi-name="jdbc/DatabaseName1" ... />
  55. <jee:jndi-lookup id="DatabaseName2DataSource"
  56. jndi-name="jdbc/DatabaseName2" ... />
  57. ...
  58.  
  59. <GlobalNamingResources>
  60. <Resource name="jdbc/ApplicationContextX_DatabaseName1" ... />
  61. <Resource name="jdbc/ApplicationContextX_DatabaseName2" ... />
  62. <Resource name="jdbc/ApplicationContextY_DatabaseName1" ... />
  63. <Resource name="jdbc/ApplicationContextY_DatabaseName2" ... />
  64. ...
  65. </GlobalNamingResources/>
  66.  
  67. <GlobalNamingResources>
  68. <Resource name="jdbc/ApplicationContextX_DatabaseName" ... />
  69. <Resource name="jdbc/ApplicationContextY_DatabaseName" ... />
  70.  
  71. <Context path="/ApplicationContextX" ... >
  72. <ResourceLink global="jdbc/ApplicationContextX_DatabaseName" name="jdbc/DatabaseName" ... />
  73. </Context>
  74.  
  75. <Context path="/ApplicationContextY" ... >
  76. <ResourceLink global="jdbc/ApplicationContextY_DatabaseName" name="jdbc/DatabaseName" ... />
  77. </Context>
  78.  
  79. <Context path="/ApplicationContextX" ... >
  80. <ResourceLink global="jdbc/ApplicationContextX_DatabaseName" name="jdbc/applicationXprivateDatabaseName" ... />
  81. </Context>
  82.  
  83. <Context path="/ApplicationContextY" ... >
  84. <ResourceLink global="jdbc/ApplicationContextY_DatabaseName" name="jdbc/applicationYprivateDatabaseName" ... />
  85. </Context>
  86.  
  87. <context:property-placeholder location="classpath:app.properties"/>
  88.  
  89. <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
  90. <property name="driverClassName" value="oracle.jdbc.OracleDriver"/>
  91. <property name="url" value="jdbc:oracle:thin:@${db.host}:${db.port}:${db.user}"/>
  92. <property name="username" value="${db.user}"/>
  93. <property name="password" value="${db.pass}"/>
  94. </bean>
  95.  
  96. @Value("${db.user}") String defaultSchema;
  97.  
  98. @Inject ApplicationContext context;
  99. Enviroment env = context.getEnvironment();
  100. String defaultSchema = env.getProperty("db.user");
  101.  
  102. @Value('${db.user:testdb}') private String dbUserName;
  103.  
  104. <property name='username' value='${db.user.${env}}'/>
  105.  
  106. <Loader className="org.apache.catalina.loader.VirtualWebappLoader"
  107. virtualClasspath="/srv/web/app/"/>
  108.  
  109. <Context>
  110. ...
  111. <Resource auth="Container" factory="com.benasmussen.jndi.url.URLFactory"
  112. name="url/MyUrl" type="java.net.URL" url="file:///your/path/to/file"/>
  113. ...
  114. </Context>
  115.  
  116. <jee:jndi-lookup id="myUrl" jndi-name="java:comp/env/url/MyUrl" expected-type="java.net.URL" />
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement