- Create user and grant permission
alter session set "_ORACLE_SCRIPT"=true;
create user [username] identified by [password];
grant connect, create session, imp_full_database to [username];
CREATE SMALLFILE TABLESPACE [TABLESPACE_NAME] DATAFILE 'FILEDATA.dbf' SIZE 7G AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
GRANT UNLIMITED TABLESPACE TO [username]; - Create Directory
CREATE DIRECTORY BACKUP_DIR AS '/home/oracle/import';
GRANT read,write on DIRECTORY BACKUP_DIR to [username]; - Import
impdp [username]/[password] DIRECTORY=BACKUP_DIR DUMPFILE=File.dmp FULL=Y LOGFILE=import.log
Tuesday, July 21, 2020
Import DUMP file in Oracle
Sunday, June 21, 2020
WSO2 Micro Integrator- Remove Request Headers From Response
Add the name of the header to be removed as a property property
<property name="<name of the header to be removed>" scope="transport" action="remove"/>
Note : The above method removes only the specified headers from the response. If you need to remove all the headers, follow the instructions below.
Add the TRANSPORT_HEADERS property
<property name="TRANSPORT_HEADERS" action="remove" scope="axis2"/>
<property name="<name of the header to be removed>" scope="transport" action="remove"/>
Note : The above method removes only the specified headers from the response. If you need to remove all the headers, follow the instructions below.
Add the TRANSPORT_HEADERS property
<property name="TRANSPORT_HEADERS" action="remove" scope="axis2"/>
WSO2 Micro Integrator - Enable Jms transport
Edit file [MI_HOME]/conf/deployment.toml, add below lines:
[[transport.jms.listener]]
name = "myQueueListener"
parameter.initial_naming_factory = "com.ibm.mq.jms.context.WMQInitialContextFactory"
parameter.broker_name = "IBM MQ"
parameter.provider_url = "X.X.X.X:1416/Channel"
parameter.connection_factory_name = "connection_factory_name "
parameter.connection_factory_type = "queue"
[[transport.jms.sender]]
name = "myQueueSender"
parameter.initial_naming_factory = "com.ibm.mq.jms.context.WMQInitialContextFactory"
parameter.broker_name = "IBM MQ"
parameter.provider_url = "X.X.X.X:1416/Channel"
parameter.connection_factory_name = "connection_factory_name "
parameter.connection_factory_type = "queue"
mqcontext.jar
jms.jar
providerutil.jar
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>wmq-client</groupId>
<artifactId>wmq-client</artifactId>
<version>8.0.0.4</version>
<packaging>bundle</packaging>
<dependencies>
<dependency>
<groupId>com.ibm</groupId>
<artifactId>fscontext</artifactId>
<version>8.0.0.4</version>
<scope>system</scope>
<systemPath>${basedir}/lib/mqcontext.jar</systemPath>
</dependency>
<dependency>
<groupId>com.ibm</groupId>
<artifactId>providerutil</artifactId>
<version>8.0.0.4</version>
<scope>system</scope>
<systemPath>${basedir}/lib/providerutil.jar</systemPath>
</dependency>
<dependency>
<groupId>com.ibm</groupId>
<artifactId>allclient</artifactId>
<version>8.0.0.4</version>
<scope>system</scope>
<systemPath>${basedir}/lib/com.ibm.mq.allclient.jar</systemPath>
</dependency>
<dependency>
<groupId>javax.jms</groupId>
<artifactId>jms</artifactId>
<version>1.1</version>
<scope>system</scope>
<systemPath>${basedir}/lib/jms.jar</systemPath>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.3.4</version>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
<Bundle-Name>${project.artifactId}</Bundle-Name>
<Export-Package>*;-split-package:=merge-first</Export-Package>
<Private-Package/>
<Import-Package/>
<Embed-Dependency>*;scope=system;inline=true</Embed-Dependency>
<DynamicImport-Package>*</DynamicImport-Package>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
</project>
[[transport.jms.listener]]
name = "myQueueListener"
parameter.initial_naming_factory = "com.ibm.mq.jms.context.WMQInitialContextFactory"
parameter.broker_name = "IBM MQ"
parameter.provider_url = "X.X.X.X:1416/Channel"
parameter.connection_factory_name = "connection_factory_name "
parameter.connection_factory_type = "queue"
[[transport.jms.sender]]
name = "myQueueSender"
parameter.initial_naming_factory = "com.ibm.mq.jms.context.WMQInitialContextFactory"
parameter.broker_name = "IBM MQ"
parameter.provider_url = "X.X.X.X:1416/Channel"
parameter.connection_factory_name = "connection_factory_name "
parameter.connection_factory_type = "queue"
Copying IBM Websphere MQ libraries
These instructions are tested on IBM WebSphere MQ version 8.0.0.4. However, you can follow them for other versions appropriately.
- Create a new directory named wmq-client , and then create another new directory named lib inside it.
- Copy the following JAR files from the <IBM_MQ_HOME>/java/lib/ directory (where <IBM_MQ_HOME> refers to the IBM WebSphere MQ installation directory) to the wmq-client/lib/ directory.
mqcontext.jar
jms.jar
providerutil.jar
- Create a POM.xml file inside the wmq -client/ directory and add all the required dependencies as shown in the example below.
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>wmq-client</groupId>
<artifactId>wmq-client</artifactId>
<version>8.0.0.4</version>
<packaging>bundle</packaging>
<dependencies>
<dependency>
<groupId>com.ibm</groupId>
<artifactId>fscontext</artifactId>
<version>8.0.0.4</version>
<scope>system</scope>
<systemPath>${basedir}/lib/mqcontext.jar</systemPath>
</dependency>
<dependency>
<groupId>com.ibm</groupId>
<artifactId>providerutil</artifactId>
<version>8.0.0.4</version>
<scope>system</scope>
<systemPath>${basedir}/lib/providerutil.jar</systemPath>
</dependency>
<dependency>
<groupId>com.ibm</groupId>
<artifactId>allclient</artifactId>
<version>8.0.0.4</version>
<scope>system</scope>
<systemPath>${basedir}/lib/com.ibm.mq.allclient.jar</systemPath>
</dependency>
<dependency>
<groupId>javax.jms</groupId>
<artifactId>jms</artifactId>
<version>1.1</version>
<scope>system</scope>
<systemPath>${basedir}/lib/jms.jar</systemPath>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.3.4</version>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
<Bundle-Name>${project.artifactId}</Bundle-Name>
<Export-Package>*;-split-package:=merge-first</Export-Package>
<Private-Package/>
<Import-Package/>
<Embed-Dependency>*;scope=system;inline=true</Embed-Dependency>
<DynamicImport-Package>*</DynamicImport-Package>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
</project>
- Navigate to the wmq -client directory using your Command Line Interface (CLI), and execute the following command, to build the project: mvn clean install
- Stop the WSO2 Micro Integrator, if it is already running.
- Remove any existing IBM MQ client JAR files from the MI_HOME/dropins directory and the MI_HOME/lib directory.
- Copy the <wmq-client>/target/wmq-client-8.0.0.4.jar file to the MI_HOME/dropins directory.
- Download the jta.jar file from the maven repository, and copy it to the MI_HOME/lib directory.
Sunday, June 14, 2020
JBOSS 7.3 connect to remote ActiveMQ
- Create mododule ActiveMQ
mkdir -pv $JBOSS_HOME/modules/system/layers/base/org/apache/activemq/main
cp activemq-all-5.15.9.jar $JBOSS_HOME/modules/system/layers/base/org/apache/activemq/main
Create module.xml with content below:
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.5" name="org.apache.activemq">
<resources>
<resource-root path="activemq-all-5.15.9.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.jms.api"/>
</dependencies>
</module> - Choose "Configuration -> Naming -> Binding" click Add(external-context)
Class: javax.naming.InitialContext
Environment:
java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory
java.naming.provider.url=tcp://xxxxx:61616
Module: org.apache.activemq
Name: java:global/remoteContext
Binding Type: external-context - Choose "Configuration -> Naming -> Binding" click Add(lookup) for ConnectionFactory, Queue,..
Binding Type: lookup
Lookup: java:global/remoteContext/ConnectionFactory
Monday, June 1, 2020
JMS Message as a MQRFH2 Message
MQGetMessageOptions gmo = new MQGetMessageOptions();
gmo.options = CMQC.MQGMO_PROPERTIES_FORCE_MQRFH2 + CMQC.MQGMO_FAIL_IF_QUIESCING + CMQC.MQGMO_NO_WAIT;
MQMessage receiveMsg = new MQMessage();
queue.get(receiveMsg, gmo);
if (CMQC.MQFMT_RF_HEADER_2.equals(receiveMsg.format)){
receiveMsg.seek(0);
byte[] b = new byte[receiveMsg.getMessageLength()];
DataInputStream inputStream = new DataInputStream(new ByteArrayInputStream(b));
MQRFH2 rfh2 = new MQRFH2(inputStream );
int strucLen = rfh2.getStrucLength();
int encoding = rfh2.getEncoding();
int CCSID = rfh2.getCodedCharSetId();
String format= rfh2.getFormat();
int flags = rfh2.getFlags();
int nameValueCCSID = rfh2.getNameValueCCSID();
String[] folderStrings = rfh2.getFolderStrings();
for (String folder : folderStrings)
System.out.println("Folder: "+folder);
b = new byte[inputStream.available()];
inputStream.read(b);
System.out.println("Data: "+new String(b));
}else if (CMQC.MQFMT_STRING.equals(receiveMsg.format)){
String msgStr = receiveMsg.readStringOfByteLength(receiveMsg.getMessageLength());
System.out.println("Data: "+msgStr);
}else{
byte[] b = new byte[receiveMsg.getMessageLength()];
receiveMsg.readFully(b);
System.out.println("Data: "+new String(b));
}
gmo.options = CMQC.MQGMO_PROPERTIES_FORCE_MQRFH2 + CMQC.MQGMO_FAIL_IF_QUIESCING + CMQC.MQGMO_NO_WAIT;
MQMessage receiveMsg = new MQMessage();
queue.get(receiveMsg, gmo);
if (CMQC.MQFMT_RF_HEADER_2.equals(receiveMsg.format)){
receiveMsg.seek(0);
byte[] b = new byte[receiveMsg.getMessageLength()];
DataInputStream inputStream = new DataInputStream(new ByteArrayInputStream(b));
MQRFH2 rfh2 = new MQRFH2(inputStream );
int strucLen = rfh2.getStrucLength();
int encoding = rfh2.getEncoding();
int CCSID = rfh2.getCodedCharSetId();
String format= rfh2.getFormat();
int flags = rfh2.getFlags();
int nameValueCCSID = rfh2.getNameValueCCSID();
String[] folderStrings = rfh2.getFolderStrings();
for (String folder : folderStrings)
System.out.println("Folder: "+folder);
b = new byte[inputStream.available()];
inputStream.read(b);
System.out.println("Data: "+new String(b));
}else if (CMQC.MQFMT_STRING.equals(receiveMsg.format)){
String msgStr = receiveMsg.readStringOfByteLength(receiveMsg.getMessageLength());
System.out.println("Data: "+msgStr);
}else{
byte[] b = new byte[receiveMsg.getMessageLength()];
receiveMsg.readFully(b);
System.out.println("Data: "+new String(b));
}
Friday, May 8, 2020
Redhat fuse - JMS for IBM MQ
Drap and drop the JMS componet
In properties of the JMS component, select tab Advance and input the connect Factory( the connection factory have to begin with # . Ex: #connectionFactory)
Add com.ibm.mq.allclient.jar to classpath( com.ibm.mq.allclient.jar is provided by IBM MQ).
Click to tab Configuration and add 1 bean with same name for Connection Factory( ex: connectionFactory).
The JBOSS EAP must run with standalone-full.xml profile.
Rehat fuse - JDBC
Drap and drop JDBC component to Design tab
Input URI: jdbc:[datasource] ex: ExampleDS
Click to tab Configuration and add 1 bean with name is datasource name( ex: ExampleDS).
Input URI: jdbc:[datasource] ex: ExampleDS
Click to tab Configuration and add 1 bean with name is datasource name( ex: ExampleDS).
Subscribe to:
Comments (Atom)
Install and use xorg-server on macOS via Homebrew
The instructions to install and use xorg-server on macOS via Homebrew: Install Homebrew (if you haven't already): /bin/bash -c ...
-
Ref: https://blogs.sap.com/2016/11/25/get-to-know-camels-simple-expression-language-in-hci/ Introduction Simple is a, well, simple express...
-
WebRequest The function sends an HTTP request to a specified server. The function has two versions: 1. Sending simple requests of typ...
-
The instructions to install and use xorg-server on macOS via Homebrew: Install Homebrew (if you haven't already): /bin/bash -c ...



