一、前提需求说明:

  最近在做项目的时候使用jboss WildFly发布BIRT报表,在报表中我是直接添加的JDBC数据源,通过Database URL 、用户名和密码连接数据库。后来在部署到正式和测试服务器的时候还需要每次都需要修改报表文件的数据源。所以就想是不是有办法在报表文件中和服务系统中怎么配置一下,部署的时候不再需要重复修改数据源。这时想到了JNDI(Java Naming and Directory Interface, Java命名和目录接口)。

  默认通过Database URL来连接数据库的配置很简单,只要下载sqlserver 的驱动,然后添加到BIRT驱动管理中,即可选择到通过下拉框Driver Class,这里不再详细叙述。在BIRT报表连接数据库的时候,会先通过Database URL来连接数据库,如果连接不上在通过JNDI连接。

  

二、WildFly 配置JNDI

  WildFly服务管理控制台的默认地址是 http://127.0.0.1:9990/console,链接以后因为没有用户,会提示你需要你通过add-user.bat来添加用户。你只要按着提示创建用户即可,然后用创建的用户登陆控制台。

  这里会遇到一个问题,在创建数据源的时候,需要选择系统中部署的 jdbc driver,这时就需要将你的sqlserver数据库的驱动 jar 包放到web项目下的lib下面。同时要注意你的驱动包必须是JDBC-4的格式,否则在 “Detected Driver”下面会看不到你要选择的驱动。还有就是最后一步,填写Connection URL的时候默认给的url多了一个microsoft,去掉即可(jdbc:microsoft:sqlserver--jdbc:sqlserver)。其他地方配置都比较简单,就不再赘述。

  

  

  

三、 发布报表

  最后记住配置好的JNDI名称,将其填写到BIRT报表数据源中JDBC配置中。自此就直接可以将报表部署到系统中,而此时就可以去掉用户名和密码,系统会直接通过JNDI来连接数据库。

  

最后放一个Sqlserver数据库连接驱动JAR文件的下载地址:https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=11774

WildFly 9.0.2 + SQLServer + BIRT + JNDI 处理BIRT报表发布时数据源的修改的更多相关文章

  1. WildFly 9.0.2+mod_cluster-1.3.1 集群配置

    一.配置背景 最近使用WildFly 9.0.2作为中间件开发系统,给客户不熟的时候需要使用集群来进行负载均衡,一开始想到是使用Nginx.但是只通过Nginx使用 ip_hash 模式没有做到ses ...

  2. 解剖SQLSERVER 第十篇 OrcaMDF Studio 发布+ 特性重温(译)

    解剖SQLSERVER 第十篇  OrcaMDF Studio 发布+ 特性重温(译) http://improve.dk/orcamdf-studio-release-feature-recap/ ...

  3. 元数据管理器中存在错误。 实例化来自文件“\\?\C:\Program Files\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Data\Tfs_Analysis.0.db\vDimTestCaseOverlay.874.dim.xml”的元数据对象时出错。

    一.发现问题 启动SQLSERVER的数据分析服务失败 查看系统日志错误如下: 双击错误后显示详细错误: 元数据管理器中存在错误. 实例化来自文件“\\?\C:\Program Files\Micro ...

  4. Moon.Orm 5.0(MQL版)使用指南及代码生成器新版发布

    相关博文1)Moon.Orm 5.0 (MQL版) 配置说明; 2)Moon.Orm 5.0 (MQL版) 版本维护及下载(跟踪发布); 3)Moon.Orm 5.0系列文章;  4)Moon.Orm ...

  5. 精通BIRT:Eclipse商务智能报表工具开发实践指南

    http://blog.csdn.net/birtbird/article/details/8935520 [置顶] 精通BIRT:Eclipse商务智能报表工具开发实践指南 分类: BIRT 201 ...

  6. Combine 框架,从0到1 —— 2.通过 ConnectablePublisher 控制何时发布

      本文首发于 Ficow Shen's Blog,原文地址: Combine 框架,从0到1 -- 2.通过 ConnectablePublisher 控制何时发布.   内容概览 前言 使用 ma ...

  7. WildFly 9.0.2 启用 SSL

    一.最近做个项目是需要在WildFly中启用https,但是由于WildFly的中文文档比较少所以google了一下,先是通过JBOSS的官方文档了解了一下,但是官方文档这块的配置介绍有些不全面.所以 ...

  8. EF Core 1.0 和 SQLServer 2008 分页的问题

    EF Core 1.0 在sqlserver2008分页的时候需要指定用数字分页. EF Core1.0 生成的分页语句中使用了 Featch Next.这个语句只有在SqlServer2012的时候 ...

  9. window10 下 php7.0 添加Sqlserver扩展

    第一步.7.0.x 7.0.x的扩展下载地址: Microsoft Drivers for PHP for SQL Server  https://www.microsoft.com/en-us/do ...

随机推荐

  1. MEF学习小结 z

    1.什么是MEF. MEF,全称是Managed Extensibility Framework.它是.NET Framework4.0的一个类库,其主要目的是为了创建可扩展的应用程序.按照官方说法就 ...

  2. 以后坚持用java

    1.不要贪多,现在专心学习java.读一些jvm的书. 2.研究lucene,hadoop.mahout,和日后用的自然语言分析lingpipe. 3.对于数据挖掘方向,专注与weka的学习,同时注意 ...

  3. Clean Code – Chapter 4: Comments

    “Don’t comment bad code—rewrite it.”——Brian W.Kernighan and P.J.Plaugher The proper use of comments ...

  4. HW4.46

    import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...

  5. if

    语句快中的变量与函数的局部变量关系;

  6. 局域网yum服务器创建

    yum createrepo createrepo dir 配置httpd发布yum-repo; 在客户端添加yum.rep配置文件;

  7. KMP学习总结

    初学,理解可能不是那么准确~~ Next数组的含义:next[i]表示第0个元素到第i个元素组成的字符串的最大前缀后缀.Next[0]=0显然. 所以KMP的原理就是 通过找出每一阶段最大的相等的前缀 ...

  8. 取得MSSQL表中字段及主键等属性SQL语法

    SELECT c.NAME AS [Column Name], t.NAME AS [Data type], c.max_length AS [Max Length], c.precision, c. ...

  9. C#- 控制台Timer

    很少在控制台上用定时器,最近要用到,百度了一遍文章.很不错,摘下来,作备忘 关于C#中timer类 在C#里关于定时器类就有3个 1.定义在System.Windows.Forms里 2.定义在Sys ...

  10. iOS开发中使用静态库 .a 文件

    ​​iOS开发中,在使用一些第三方库时,可能是一个静态库(比如GPUImage).这种情况下,需要编译出静态库文件(.a) ,然后配合响应的头文件(.h 文件)使用. 编译静态库,直接在Xcode中编 ...