EBS QRCODE
http://www.swetake.com/qrcode/java/qr_java.html


qrcode_java0.50beta10.tar
[root@ebs12vis ~]# su - applmgr
[applmgr@ebs12vis ~]$ cd $JAVA_BASE
[applmgr@ebs12vis java]$ pwd
/d01/applmgr/VIS/apps/apps_st/comn/java
[applmgr@ebs12vis java]$ ll
total 24
drwxr-xr-x 25 applmgr dba 12288 Jan 12 12:41 classes
drwxr-xr-x 2 applmgr dba 4096 Jan 11 16:45 lib
[applmgr@ebs12vis java]$ mkdir $JAVA_BASE/com
[applmgr@ebs12vis java]$ chmod 777 $JAVA_BASE/com
[applmgr@ebs12vis java]$ cd $JAVA_BASE/com
[applmgr@ebs12vis com]$ pwd
/d01/applmgr/VIS/apps/apps_st/comn/java/com

[applmgr@ebs12vis com]$ ll
total 996
-rw-r--r-- 1 root root 1010702 Jun 12 15:23 qrcode_java0.50beta10.tar.gz
[applmgr@ebs12vis com]$ tar -zxvf qrcode_java0.50beta10.tar.gz
qrcode_java0.50beta10/
qrcode_java0.50beta10/docs/
qrcode_java0.50beta10/docs/constant-values.html
qrcode_java0.50beta10/docs/overview-tree.html
qrcode_java0.50beta10/docs/index-all.html
qrcode_java0.50beta10/docs/deprecated-list.html
qrcode_java0.50beta10/docs/allclasses-frame.html
qrcode_java0.50beta10/docs/allclasses-noframe.html
qrcode_java0.50beta10/docs/index.html
qrcode_java0.50beta10/docs/packages.html
qrcode_java0.50beta10/docs/com/
qrcode_java0.50beta10/docs/com/swetake/
qrcode_java0.50beta10/docs/com/swetake/util/
qrcode_java0.50beta10/docs/com/swetake/util/package-frame.html
qrcode_java0.50beta10/docs/com/swetake/util/package-summary.html
qrcode_java0.50beta10/docs/com/swetake/util/package-tree.html
qrcode_java0.50beta10/docs/com/swetake/util/Qrcode.html
qrcode_java0.50beta10/docs/package-list
qrcode_java0.50beta10/docs/help-doc.html
qrcode_java0.50beta10/docs/stylesheet.css
qrcode_java0.50beta10/lib/
qrcode_java0.50beta10/lib/Qrcode.jar
qrcode_java0.50beta10/README.txt
qrcode_java0.50beta10/samples/
qrcode_java0.50beta10/samples/QrAppletSample.java
qrcode_java0.50beta10/samples/QrAppletSample.html
qrcode_java0.50beta10/samples/sample.java
qrcode_java0.50beta10/samples/QrAppletSample.jar
qrcode_java0.50beta10/src/
qrcode_java0.50beta10/src/com/
qrcode_java0.50beta10/src/com/swetake/
qrcode_java0.50beta10/src/com/swetake/util/
qrcode_java0.50beta10/src/com/swetake/util/qrcode_data/
qrcode_java0.50beta10/src/com/swetake/util/Qrcode.java
[applmgr@ebs12vis com]$ cp $JAVA_BASE/com/qrcode_java0.50beta10/lib/Qrcode.jar $JAVA_BASE/com
SELECT *
FROM DBA_REGISTRY
WHERE COMP_ID = 'JAVAVM';

If not exists execute $ORACLE_HOME/javavm/install/initjvm.sql
[applmgr@ebs12vis com]$ loadjava -u apps/apps@VIS -r -v -f -genmissing -s -grant public $JAVA_BASE/com/Qrcode.jar
SELECT *
FROM DBA_OBJECTS X
WHERE 1=1
AND X.OBJECT_TYPE LIKE 'JAVA%'
AND UPPER(X.OBJECT_NAME) LIKE '%QRCODE%';

/var/tmp/qrcode
CREATE OR REPLACE AND COMPILE JAVA SOURCE NAMED QRCodeEncoder
AS import java.awt.image.BufferedImage;
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
import com.swetake.util.Qrcode;
/**
* 二维码生成器
*/
public class QRCodeEncoder {
/**
* 生成二维码(QRCode)图片
*
* @param content
* @param imgPath
*/
public void encoderQRCode(String content, String imgPath) {
try {
Qrcode qrcodeHandler = new Qrcode();
qrcodeHandler.setQrcodeErrorCorrect('M');
qrcodeHandler.setQrcodeEncodeMode('B');
qrcodeHandler.setQrcodeVersion(7);
System.out.println(content);
byte[] contentBytes = content.getBytes("gb2312");
BufferedImage bufImg = new BufferedImage(140, 140,
BufferedImage.TYPE_INT_RGB);
Graphics2D gs = bufImg.createGraphics();
gs.setBackground(Color.WHITE);
gs.clearRect(0, 0, 140, 140);
// 设定图像颜色 > BLACK
gs.setColor(Color.BLACK);
// 设置偏移量 不设置可能导致解析出错
int pixoff = 2;
// 输出内容 > 二维码
if (contentBytes.length > 0 && contentBytes.length < 120) {
boolean[][] codeOut = qrcodeHandler.calQrcode(contentBytes);
for (int i = 0; i < codeOut.length; i++) {
for (int j = 0; j < codeOut.length; j++) {
if (codeOut[j][i]) {
gs.fillRect(j * 3 + pixoff, i * 3 + pixoff, 3, 3);
}
}
}
} else {
System.err.println("QRCode content bytes length = "
+ contentBytes.length + " not in [ 0,120 ]. ");
}
gs.dispose();
bufImg.flush();
File imgFile = new File(imgPath);
// 生成二维码QRCode图片
ImageIO.write(bufImg, "png", imgFile);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* @param args
* the command line arguments
*/
public static void main(String[] args) {
String imgPath = "/var/tmp/qrcode/QRCode.png";
String content = "Oracle EBS Repository,你好,世界";
QRCodeEncoder handler = new QRCodeEncoder();
handler.encoderQRCode(content, imgPath);
System.out.println("encoder QRcode success");
}
}
CREATE OR REPLACE PROCEDURE cux_get_qrcode
AS
LANGUAGE JAVA
NAME 'QRCodeEncoder.main(java.lang.String[])' ;
set serveroutput on
call dbms_java.set_output(5000);
execute cux_get_qrcode;



EBS QRCODE的更多相关文章
- Deploying JAR Package & JSP Page in EBS R12.2.4 WLS
https://pan.baidu.com/s/1OomyeLdbGWxTtCKVcweo0w # Uninstall JAR JSP QRCODE 1.# 查找QRCODE相关文件位置 [root@ ...
- 免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)
在生活中有一种东西几乎已经快要成为我们的另一个电子”身份证“,那就是二维码.无论是在软件开发的过程中,还是在普通用户的日常中,几乎都离不开二维码.二维码 (dimensional barcode) , ...
- BPM与 SAP & Oracle EBS集成解决方案分享
一.需求分析 SAP和Oracle EBS都是作为全球顶级的的ERP产 品,得到了众多客户的青睐.然而由于系统庞大.价格昂贵以及定位不同,客户在实施过程中经常会面临以下困惑: 1.SAP如何实现&qu ...
- 使用jquery.qrcode生成二维码(转)
jQuery 的 qrcode 插件就可以在浏览器端生成二维码图片. 这个插件的使用非常简单: 1.首先在页面中加入jquery库文件和qrcode插件. <script type=" ...
- 动态生成二维码插件 jquery.qrcode.js
前段时间做项目,需要动态生成一个二维码,于是就在网上找了一下发现一个jquery插件jquery.qrcode.js,所以今天就简单说一下这个插件的使用: jquery.qrcode.js是依赖jqu ...
- qrcode 生成验证码带文字
/** * 生成二维码 * * @param int $id * @param string $file * @param boolean $is_download */public function ...
- 解决EBS中JAR包冲突的问题
同事解决的,摘抄上来备用. 问题描述:在OAF里调用ESB的服务报错如下: Error Page Exception Details. oracle.apps.fnd.framework.O ...
- EBS中利用Socket与外系统通信
某银行要求做一个签到签退功能,日终EBS系统发送报文与核心系统对帐,规定利用Socket来做传送,记录下步骤: 1.编辑: $INST_TOP/ora/10.1.3/j2ee/oacore/appli ...
- Oracle EBS R12的启停脚本
以下脚本用root用户登录执行: 一.DB启停使用EBS提供的脚本ebs_start.shsu - oraprod -c "/d01/oracle/PROD/db/tech_st/10.2. ...
随机推荐
- 转:Session,Token相关区别
参考地址:https://www.cnblogs.com/xiaozhang2014/p/7750200.html 1. 为什么要有session的出现?答:是由于网络中http协议造成的,因为htt ...
- LeetCode(48):旋转图像
Medium! 题目描述: 给定一个 n × n 的二维矩阵表示一个图像. 将图像顺时针旋转 90 度. 说明: 你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵.请不要使用另一个矩阵来旋转 ...
- Deep Learning系统实训之二:梯度下降原理
基本概念理解: 一个epoch:当前所有数据都跑(迭代)了一遍: 那么两个epoch,就是把所有数据跑了两遍,三个epoch就是把所有数据跑了三遍,以此类推. batch_size:每次迭代多少个数据 ...
- uva12436 回头再做一次
线段树维护等差数列,结点维护首项+公差即可 #include <cstdio> #include <cstring> #include <algorithm> us ...
- pytest十五:pytest-html 生成 html 报告
pytest-HTML 是一个插件,pytest 用于生成测试结果的 HTML 报告.兼容 Python 2.7,3.6 pytest-html1.github 上源码地址[https://githu ...
- easyUI拖动课程进课程表
<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>拖动 ...
- xxx is not in sudoers file 解决(转)
解决方案:首需要切换到root身份$su -(注意有- ,这和su是不同的,在用命令"su"的时候只是切换到root,但没有把root的环境变量传过去,还是当前用户的环境变量,用& ...
- C#检查服务状态和启动关闭服务
WinForm 判断服务状态,显示服务名称和状态 https://blog.csdn.net/u013063880/article/details/78626200 C#获得服务,判断服务状态,启动服 ...
- java / android int类型如何判空?
/** TextUtils.isEmpty() 方法的实现 * Returns true if the string is null or 0-length. * @param str the str ...
- [转] python安装numpy和pandas
最近要对一系列数据做同比比较,需要用到numpy和pandas来计算,不过使用python安装numpy和pandas因为linux环境没有外网遇到了很多问题就记下来了.首要条件,python版本必须 ...