Skip to main content

Posts

Showing posts from 2009

Resolve "(MARSHAL) Exception" when deploying osb project on web logic through JMX client

Last week we decided to managing deployment of osb project on web logic cluster throw programmatic way. Throw simple JMX client, it's very easy to deploy and change the runtime configuration of the osb project. However the way to development of the simple client for deploying we got some confrontation, and the current post are all about these. First of all Weblogic(10g R3) JMX implemention classes are no longer exists on weblogic.jar file. Thus, creating new proxy instance for DomainRuntimeServiceMBean might be through java native JMX clasess. However you could use wlfullclient.jar to build all the proxy client, on version 10gR3 oracle transfer all the web logic JMX implemention classes on wlfullclient.jar. Whenever you compile the project successfully and run the client, we found another runtime error related with "(MARSHAL) Exception". The runtime error are as follows: 01.06.2009 13:21:44 com.sun.corba.se.impl.encoding.CDRInputStream_1_0 read_value WARNING: "IOP...

Setting up Web logic clusters for GWT applications

Inspired by the following post WebLogic Load Balancing for Oracle ADF Applications i have decided to make some agile test for GWT applications. First we will develop a simple hello world GWT application and configure load balancing cluster. Sample GWT application will be deployed on WebLogic cluster, Load Balancing domain or proxy domain will distribute user requests between cluster members. 1) Develop sample GWT application It's a hello world web application with one text field and button on a web page. I use maven to develop the application. We can choose any web application to deploy on web logic cluster, any way our aim is to configure web logic cluster and we will go though all over the steps next. 2) Configure cluster domain It's very easy to setup and configure cluster on web logic. Just start Configuration wizard and select customize installation. Change port number of the Admin server, in my case it is 7002 On Configure Managed server page add two new managed server...

Implementing DataServices with Oracle data service integrator

DataService: one kind of special service, which expose interface for data stored in sources such as relational databases, CSV files & MS-Excel files. DataServices plays a vital role on IT strategy like SOA. Any organization have to have expose their master data to any enterprise application. Through data services a company enables to have high-quality, consistent data at the right place at the right time. In practical, data services exposes data, represented as Entity Data Model (EDM) objects, via web services accessed over HTTP. The data can be addressed using a REST-like URI. The Astoria service, when accessed via the HTTP GET method with such a URI, will return the data. The web service can be configured to return the data in either plain XML, JSON or RDF+XML. For more information see the following article about data services . It's not hard to create and maintain data service on standard way, a lot of ORM framework like hibernate, iBatis, toplink even low level jdbc framew...

Solving xcb_xlib.c:50: xcb_xlib_unlock: Assertion 'c->xlib.lock' failed. on fedora 8

Yesterday i decided to upgrade osb 3.0 to OSB 10gr3 on my linux box. During installation i have first locate the famous error "xcb_xlib.c:50: xcb_xlib_unlock: Assertion 'c->xlib.lock' failed.". Through google, i have found a few solution to solve the problem but all the solutions gone in vain. I have had following configuration: [recon@localhost home]$ cat /etc/redhat-release Fedora release 8 (Werewolf) [recon@localhost home]$ java -version java version "1.5.0_14" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_14-b03) Java HotSpot(TM) 64-Bit Server VM (build 1.5.0_14-b03, mixed mode) [recon@localhost home]$ rpm -q libxcb libX11 libxcb-1.0-3.fc8 libX11-1.1.3-4.fc8 First of all, i have tried to patch the library libmawt.so by sed -i 's/XINERAMA/FAKEEXTN/g' of my current JVM, but it was not help me to run the installer to install OSB 10gR3. Even i installed latest 1.6 JDK and patch the libmawt.so but in vain. From one of linux forum, i...

Google Analytics api released

Finally googles long waited analytics api released on last week. Api will help you to write client for gathering and analyze data for your web site. Now through client we could analyze data from our standalone java client and no longer need to logon to our Google Analytics site. Api released with three flavour: 1) Java Script; 2) Java; 3) Http Along with client libraries there are also reference document and Sample codes to start coding and test api. Also there are brief explanation of account, profile, metrics and dimensions related to google analytics. It will take a couple of minutes to write down your code or just run sample code distributed by google to get the action. The best part: this sophisticated, full-featured web analytics package is free. For getting started see here.

Upgrade osb project with new advance feature of MTOM support on version 10gR3

Last week we decided to upgrade all our OSB project from OSB3 to OSB10GR3. A few of our project worked with attachment's which failed on new version of OSB. In this post we will explain briefly all the necessary step to upgrade project working with attachments to version 10g release 3. Assume that, we have a proxy service which will get arbitrary MTOM attachment. First of all, after exporting the project on workspace we must enable mtom support on proxy properties page. When XOP/MTOM Support is enabled, you can further select how to handle binary data in the $header and $body message context variables from among the following options: * Include Binary Data by Reference: (Default) In an inbound request message, replace xop:Include elements with ctx:binary-content elements when setting up the $header and $body message context variables. * Include Binary Data by Value: In an inbound request message, replace xop:Include elements with Base64-encoded text versions of corresponding b...

Send e-mail with attachment through OSB

Oracle Service Bus (OSB) contains a good collection of adapter to integrate with any legacy application, including ftp, email, MQ, tuxedo. However e-mail still recognize as a stable protocol to integrate with any application asynchronously. Send e-mail with attachment is a common task of any business process. Inbound e-mail adapter which, integrated with OSB support attachment but outbound adapter doesn't. This post is all about sending attachment though JavaCallout action. There are two ways to handle attachment in OSB: 1) Use JavaCallout action to pass the binary data for further manipulation. It means write down a small java library which will get the attachment and send the e-mail. 2) Use integrated outbound e-mail adapter to send attachment, here you have to add a custom variable named attachment and assign the binary data to the body of the attachment variable. First option is very common and easy to implement through javax.mail api, however a much more developer manage t...

Apply dynamic routing on Oracle service bus

Last year on one of our project we applied oracle enteprise service (SOA suite 10.1.3.1) to integrate with a few legacy system through IBM MQ. This year we have a plan to migrate this integration on OSB (Oracle service bus) previously known Aqua logic service bus from company BEA. Today i simplify one of our integration by using dynamic routing action. Usecase: We have a few queue predefined on MQ manager to send messages for different purpose. Messages should route by according to their message content. By using dynamic routing action and routing table we can easily publish messages to proper destination. The input xml file is as follows <?xml version="1.0" encoding="UTF-8"?> <TaxDiclaration id="uuid:62fa5eac-3df4-448d-a576-916dd5b432f2"> <destination> rtu-chanel-2 </destination> <gtd> <id>13421</id> <person> <type>physical</type> <name>Jhone</name> <lastname>dow</lastn...

Develop your custom resource adapter with maven

The goal of the post is to publish a complete tutorial of developing a resource adapter using maven2. On the web we could found a few complete tutorial about developing resource adapter which will also help to understand the JCA specification. This current post may help the developer to agile development of JCA adapter. On the developing process we are going to use maven2 software managment tool and oc4j container to deploy the adpater and MDB client as consumer of the adapter. For simlicity, we will going to build a inbound file adapter, which will get file periodically from some drive. An MDB (Message driven bean) will subscribe to the adapter to get file and manipulate the content of the file. 1) Building the resource adapter : 1.1)FileActivationSpec.java JCA activation specification for the inbound JCA resource adapter. This activation specification contains the following configuration items: - filePath - fileExt - pollingInterval These configuration items are used at ru...

Correct dependency configuration for maven-weblogic-plugin to deploy in Weblogic server 10.3.0.0

Mojo weblogic plugin version 2.9.0 is not stable for Weblogic server 10.3.0.0. Configuration which suggest on the mojo documentation is not working for current Weblogic server version and produce some hopeless error. Seems installed weblogic.jar and webservices.jar on local repository is not using properly on plug ins life cycle. However it's easy to fix the error through system scope dependency which i will demonstrate 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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>ru.fors.test.gwt.core</groupId> <artifactId>core-web</artifactId> <packaging>war</packaging> <version>1.0</version> <name>core-web</name> <url>http://www.fors.ru</url> <parent> <groupId...

Oracle develop roadshow in Moscow, 4-5 th february

Last week Oracle corporation demonstrated their roadshow in Moscow. The roadshow started with the sparkling presentation of Larry Cable. Within an hour he could manage to demonstrate the Oracle Big Fussion middleware, focused on Oracle WebLogic Server and related (Java based) standards technologies. It was very interesting to listen JAVA/RICH ENTERPRISE APPLICATIONS TRACK and enjoy the ability of Oracle JDeveloper. I always against Oracle strategy to make JDeveloper as a main IDE to develop all the java related technology on Oracle platform, because it's seems all the eggs in one basket. But while Larry go through all the the ADF rich client with some mouse click, i started believe that may be JDeveloper already got maturity to use seriously. There were three main Track: DataBase Track and hands on lab; Java/Rich enterprise Application track and hands on lab; Service oriented architecture track and hands on lab. I was very interested on SOA track, specially on BEA products. This tr...

Wrapping business rules rmi clients with JAX-WS

Most often after deploying new business rules in BRES, we have to redeploy IlrSession beans with our custom beans(XOM). Also developing new client for the business rules is time consuming work. Bres(Business rules execution server) provide rmi protocol and some web service support(Decision service) to invoke rules in bres. Deployed rules will be exposed only when you add your domain class(XOM) in the jrules-bres-ootbds.ear and redeploy it again in application server. All the life cycle is too time consuming to manage the whole project. However, often business analyst (Most of time, project mangers require such thing to fulfill customers demand) requires expose business rules through web service for solving business requirement with customer. In today's post i will show a agile way to expose business rules through web service and run it into jdk 6 embedded http server. We have one web service with a few methods, every method expose one business rules as a web method. For developing...

Agile development of apache tucsany SCA with Ilog jrules decision services

Apache tucsany provides a framework for developing SOA solution that is based on Service Component Architecture (SCA) standard. Tucsany offers following advantages: 1) Provides a model for creating composite applications by defining the services in the fabric and their relationships with one another. 2) Enables service developers to create reusable services that only contain business logic. 3) Existing applications can work with new SCA compositions. This allows for incremental growth towards a more flexible architecture, outsourcing or providing services to others. Tucsany implemented in java and c++ programming language. For more information visit apache tucsany site . In the growing uses of business rules in SOA, on the current post i decide to make a laboratory work to show how to use business rules in SCA SOA solution. For more information to get benifit from business rules please consider my some previous post about Ilog business rules. On the current tutorial we are goin...