Tag: datasource

属性’dataSource’是必需的java(Spring)错误

我正在用Java开发一个Web应用程序(Spring) 我的java文件是, try { JdbcTemplate jt = new JdbcTemplate(dataSource); System.out.println(“Connection …..”+jt.toString()); Connection conn; Statement st; conn =DriverManager.getConnection(jt.toString()); conn = (Connection) jt.getDataSource(); st=conn.createStatement(); System.out.println(“Connection created…..”+st); } catch (Exception e) { System.out.println(“Error Found….”+ e.getMessage()); System.out.println(“Strack Trace…..”+e.getStackTrace()); } 我的spring-servlet.xml文件是, 但它得到一个错误,因为, Error Found: Property ‘dataSource’ is required. Strack Trace: [Ljava.lang.StackTraceElement;@7948dd 在这里,我想在Java文件中建立连接,并将其作为Jasper Report传递给另一个变量。 请帮忙,如何解决这个问题?

spring – 如何自动连接数据源?

我总是遇到autowire和DI的问题,所以我希望有人可以帮忙,因为我已经被困了几天了。 这是代码: @Service public class TicketsController implements Controller { private TicketManager ticketManager; @Autowired public void setTicketManager(TicketManager ticketManager) { this.ticketManager = ticketManager; } … } @Service public class SimpleTicketManager implements TicketManager { private TicketsDao ticketsDao; @Autowired public void setTicketsDao(TicketsDao ticketsDao) { this.ticketsDao = ticketsDao; } … } @Repository public class JdbcTicketDao implements TicketsDao { private DataSource […]

以编程方式将数据源添加到嵌入式tomcat 7中的JNDI上下文

我正在尝试在服务器启动之前注册一个新的数据源,但是我正在查找执行的查找 javax.naming.NameNotFoundException:名称[jdbc / db]未绑定在此Context中。 无法找到[jdbc]。 这是我启动tomcat的方式: Tomcat tomcat = new Tomcat(); //… ContextResource resource = new ContextResource(); resource.setName(“jdbc/db”); resource.setAuth(“Container”); resource.setType(“javax.sql.DataSource”); resource.setScope(“Sharable”); resource.setProperty(“driverClassName”, “org.hsqldb.jdbc.JDBCDriver”); resource.setProperty(“url”, “jdbc:hsqldb:hsql://localhost:1234/mydb1”); tomcat.getServer().getGlobalNamingResources().addResource(resource); tomcat.start(); tomcat.getServer().await(); 查找: Connection conn = null; try { Context initContext = new InitialContext(); Context envContext = (Context) initContext.lookup(“java:/comp/env”); DataSource ds = (DataSource) envContext.lookup(“jdbc/db”); conn = ds.getConnection(); conn.createStatement()…. } […]

是否有JNDI命名空间约定?

我已经下载了JBoss EAP 6.1,我将添加一个新的数据源。 我必须将数据源绑定到JNDI名称。 通过读取示例数据源的JNDI名称,该名称是: java:jboss/datasources/ExampleDS 我看到他们在java:jboss之后使用了datasources 。 这只是一个命名约定 – 我无法在任何地方找到 – 或者使用java:jboss/bananaboat/MyDS是不是很好java:jboss/bananaboat/MyDS ? 下面列出的第一部分是正确的 – 例如java:comp是范围而其余部分只是普通的层次结构组织? java:comp/ – The namespace is scoped to the current component (ie EJB) java:module/ – Scoped to the current module java:app/ – Scoped to the current application java:global/ – Scoped to the application server https://docs.jboss.org/author/display/AS71/JNDI+Reference

Spring dataSource bean定义失败

我正在尝试使用Spring的JdbcTemplate来简化在Tomcat中部署并连接到Postgres的Java Web服务中的DAO。 我正在关注Spring的文档 ,我正在尝试在应用程序上下文文件中配置DataSource,如下所示: 我在适当的位置有以下db.properties文件: driverClassName=org.postgresql.Driver url=jdbc:postgresql://pgprod.ecnext.com:5432/manta username=my_user_name password=my_password 当我尝试部署时,我在catalina.out找到以下堆栈跟踪: SEVERE: Context initialization failed org.springframework.beans.factory.BeanDefinitionStoreException: Invalid bean definition with name ‘dataSource’ defined in ServletContext resource [/WEB-INF/context.xml]: Could not resolve placeholder ‘driverClassName’ at org.springframework.beans.factory.config.PlaceholderConfigurerSupport.doProcessProperties(PlaceholderConfigurerSupport.java:209) at org.springframework.beans.factory.config.PropertyPlaceholderConfigurer.processProperties(PropertyPlaceholderConfigurer.java:220) at org.springframework.beans.factory.config.PropertyResourceConfigurer.postProcessBeanFactory(PropertyResourceConfigurer.java:84) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:681) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:656) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:446) at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:385) at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:284) at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4765) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5260) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) […]

Wildfly 10无法连接数据源:无效连接

问题 我正在尝试测试我的连接并且它一直给我同样的错误,而乍一看我看不出我做错了什么。 也许我忽略了一些东西…… 错误 nexpected HTTP response: 500 Request { “address” => [ (“subsystem” => “datasources”), (“data-source” => “ProjectenDS”) ], “operation” => “test-connection-in-pool” } Response Internal Server Error { “outcome” => “failed”, “failure-description” => “WFLYJCA0040: failed to invoke operation: WFLYJCA0047: Connection is not valid”, “rolled-back” => true } 独立-full.xml jdbc:mysql://localhost:3306/projecten3db com.mysql.jdbc.Driver mysql-connector-java-5.1.40-bin.jar_com.mysql.jdbc.Driver_5_1 10 11 100 […]

防止JBoss 7上的JNDI数据源的Oracle连接自动提交(Jeeves DBMS)

我目前在JBoss 7中使用Oracle JNDI数据源的自动提交设置有一个奇怪的情况。 大纲 我想部署的应用程序,我可以检查但不能更改,从连接池获取连接,并在某些语句后尝试提交。 显然,连接默认情况下autocommit设置为’true’,因此引发exception。 You cannot commit with autocommit set! 我不能做什么 由于我无法更改应用程序源,因此以下“解决方案”不适用: con.setAutoCommit(false); 我尝试了什么 我查看了standalone.xml的XML Schema,发现了数据源定义中的两个有希望的元素: false 但这被忽略了。 此外,我尝试使用具有以下属性的xa-datasource: false 但autoCommit属性属于连接,而不属于数据源,因此引发了PropertyNotFoundexception。 我的问题 如何在JBoss7下的JNDI数据源中将Autocommit设置为false,我错过了什么? 我的定义 jdbc:oracle:thin:@****:****:**** false oracle.jdbc 10 100 true false FailingConnectionOnly ***** ***** 5000 1 更新 代码片段: public AccessManager(jeeves.resources.dbms.Dbms dbms, SettingManager sm) throws SQLException { List operList = dbms.select(“SELECT * FROM Operations”).getChildren(); […]

我应该在应用程序或应用程序服务器中定义数据源吗?

我已经开发了两个不同团队的应用程序(在Jboss服务器上运行)。 一个团队在应用程序WAR文件中有数据源配置,另一个团队在应用程序服务器的standalone.xml内部有数据源配置。 而且我不确定哪种方法更好。 因此,我在服务器的standalone.xml中定义数据源时发现了一些优点。 在服务器的standalone.xml中定义数据源比在war文件中更安全。 如果数据库连接凭证存储在服务器的standalone.xml中,几乎从未修改过,它比war文件中的密码更安全,war文件经常从开发人员的机器传输到服务器,所有开发人员都会传播数据库配置电脑。 通过在standalone.xml中使用数据源,我们可以使war文件更小,因为JDBC驱动程序可以作为模块安装,并且可以从war文件中删除。 此外,从类路径加载JDBC作为模块更有效。 如果我们不希望应用程序开发团队知道数据库连接设置,我们可以将数据源放在standalone.xml中。 通过在应用程序WAR文件中使用数据源配置,我看到以下优点: 开发团队无权在运行Jboss的环境中更改Jboss配置文件。 因此,只能在应用程序中定义DB连接。 当开发人员经常需要在不同的数据库连接之间切换时,它在开发状态下很有用。 例如,开发人员可以在构建WAR文件时指定连接。 所以我想知道两种方法是否还有其他优点。 而你认为哪种方法更好?

用于MS SQL Server的JBoss AS 5数据库连接池重新连接例程

当从JBoss AS 5到DB的连接暂时丢失时,我想提出重新连接到MS SQL Server的最佳方法。 对于Oracle,我发现了这个问题: “当连接变坏时,有没有办法让JBoss连接池重新连接到Oracle?” 它表示它使用Oracle特定的ping例程,并利用JBoss’Configuration Datasources Wiki中描述的valid-connection-checker-class-name属性。 我想避免的是每次从池中提取连接时都运行另一个SQL,这是另一个属性check-valid-connection-sql基本上做的。 所以现在,我倾向于使用exception排序器类名称的方法,但我不确定这是否是MS SQL Server的最佳方法。 希望听到您对该主题的建议。 谢谢!

无法通过JBoss远程访问数据源

上下文 我有一个JBoss,我成功地部署了一个数据源mydatasource-ds.xml 。 它的JNDI名称是java:mydatasourceDS 。 JBoss声称数据源已成功部署。 JMX控制台也很好。 问题 我想从在单独的JVM上启动的客户端Java应用程序中使用此数据源。 但我得到一个例外,说java:mydatasourceDS无法找到。 java.lang.ClassCastException: javax.naming.Reference cannot be cast to javax.sql.DataSource 细节 这是persistence.xml文件: java:mydatasourceDS 这是jndi.properties文件: java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory java.naming.provider.url=jnp://localhost:1099 java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces 这是应用程序类路径: jndi.properties log4j.properties META-INF\persistence.xml hibernate-jpa-2.0-api-1.0.0.Final.jar jnp-client-5.0.3.GA.jar jboss-common-core-2.2.14.GA.jar jboss-logging-spi-2.1.0.GA.jar hibernate-entitymanager-3.6.4.Final.jar hibernate-core-3.6.4.Final.jar antlr-2.7.6.jar commons-collections-3.1.jar dom4j-1.6.1.jar hibernate-commons-annotations-3.2.0.Final.jar jta-1.1.jar javassist-3.12.0.GA.jar slf4j-api-1.6.1.jar slf4j-log4j12-1.6.1.jar log4j-1.2.16.jar xstream-1.4.1.jar xmlpull-1.1.3.1.jar xpp3_min-1.1.4c.jar 编辑我找到了问题的根源。 我的客户端应用程序可用的javax.sql.DataSource不是从JNDI收到的。 我从JNDI收到的是JBoss javax.sql.DataSource 。 相同的名称但是稍微不同的类因此ClassCastException … 在撰写本文时,可以在此包中找到JBoss javax.sql.DataSource: […]