//AMIS Technology Blog » ejb

Posts tagged ejb

image.png

ADF interaction with business service – an ongoing discussion

0

The ADF framework strongly suggests if not dictates a certain application architecture. Through ADF BC (Business Components) – the predominant business service implementation with ADF – applications will typically interact directly with the database, over JDBC Database Connections from a shared connection pool. Developers who create the ADF BC Entity Objects and View Objects will be quite aware of the data model and the database implementation. They will usually write SQL. And the result of their work is substantially coupled with the database. Transactions across multiple data source are very hard to implement in that typical ADF BC scenario because ADF BC talks to a single database and typically controls its own transaction.

When ADF applications are developed in an environment where an enterprise architecture has been laid down, and decoupling is an important objective and service orientation is mandated – then this typical implementation of the business service using ADF BC connecting directly to the database may not be desirable or even allowed.

On one of my projects, we are currently in the situation where we try to determine the guidelines for the implementation of the More >

Vacatures bij AMIS services

EJB an MDB best practices on WebLogic Cluster

2

Recently I did an audit on a WebLogic 11g platform of one of our customers. There were many problems with the availability of their JAVA Applications. Some of the problems we’re platform related ( installation, configuration and infrastructure related) but a lot of them already existed in an earlier stage at application programming and configuration level.

So I decided to bundle some tips for JAVA programmers how they should configure their EJB, MDB and Servlet applications when they will be deployed on a WebLogic cluster.

This is an example of a typical EJB application architecture in WebLogic Server:

Some hints and tips:

(more…)

Vacatures bij AMIS services

Using the Oracle WebLogic Technology Adapters with custom Java – Message Driven Bean (MDB) triggered by File Adapter (part of the story)

3

Oracle’s product portfolio contains the Technology Adapters. A set of JCA Connectors that provide a bridge between various technologies – such as JMS, AQ, Database (SQL and PL/SQL), FTP and File System – on the one hand and the world of JEE on the other. The SOA Suite 11g and Oracle Service Bus leverage these adapters to connect to and from these technologies. For example: through the adapters, instances of composite applications can be instantiated through the appearance of a file on the file system or a new record in a database table. And, in the outbound direction: OSB and SOA Suite can call out to PL/SQL procedures, send messages to JMS Topics or an AQ queue and write files to an FTP server.

The technology adapters comply with the JEE standard specification of JCA (Java Connector Architecture). They are deployed as a special type of resource – JCA Adapter – on WebLogic Server. And they can be connected to custom Java components – in addition to their better known usage with SOA Suite and Oracle Service Bus.

I have tried to use the File Adapter in an inbound fashion to trigger a Message Driven Bean when a new file is received in a specific directory. This article describes my More >

SIG Event

Invoke SOA Composite application through RMI as remote EJB (using binding.adf)

0

In a recent post I described how we can use the EJB Binding in SOA Suite 11g PS2 to invoke a SOA Composite application through RMI as a remote EJB. This interaction can be fully based on Java interfaces – no WSDL or XML required. However convenient that is, I have not yet been able to make it work for complex arguments or return parameters: methods that use simple types work fine, but using custom POJOs as input or return value did not result in a properly exposed EJB (even though deployment seems successful).

There is another way to invoke a SOA Composite as EJB via RMI. This other way is through the binding.adf binding type. The main difference with the inbound EJB binding is that we communicate in terms of XML (over RMI) with the SOA Suite’s generic Client API – and not directly to a service specific EJB. I was able to get this to work thanks to articles by Edwin Biemond (http://biemond.blogspot.com/2009/11/invoking-soa-suite-11g-service-from.html) and Changjae Lee (http://blogs.oracle.com/jaylee/2009/08/invoking_composite_from_javajs.html). They laid the foundation – and I adapted it for SOA Suite 11g R1 PS2.

The steps we go through:

Expose the Composite service through the More >
SIG Event

Publish SOA Composite application as EJB to be invoked from Java applications using EJB Binding

0

With the recent (April 2010) SOA Suite 11g R1 Patch Set 2 (11.1.1.3.0), several new capabilities have been added to the SOA Suite. One these is the EJB Binding. Or rather, an enhanced version of this binding. In previous releases, this binding was available to provide interaction with SDO enabled EJBs – based on a WSDL interface and XML messages. The PS2 release added full Java support to the EJB binding. This means that we do not have to concern ourselves with WSDL and XSD that maps to the Java interface we want to invoke or expose, nor with sending a XML based payload when we invoke the composite service. All we need is the Java interface that describes either the EJB that we want to invoke (for an EJB Binding Reference) or that we want to expose (for an EJB Binding Service).

Steps:

1. Create Composite like always

2. Create a Java Interface (and possibly Java domain classes or bean types describing the structure of the input and ouput of the methods on the EJB (that should correspond with the operations available in the Composite application)

package nl.amis.utilities; public interface FilterAndTranslate { public String translate(String input); }

Note: steps 1 and 2 can be More >

Vacatures bij AMIS services

Calling an EJB from a SOA Composite Application using the EJB Binding based on Java Interface

5

I am currently reworking Chapter 12 for the SOA Suite 11g Handbook. This chapter describes various types of interaction SOA Composite Applications can have with Java applications and components. Since the initial creation of this chapter – some 6 months ago – we have had the Patch Set 2 release of the SOA Suite. This patch set introduced some additional functionality in this particular area of the SOA Suite, including the EJB Binding directly based on a Java Interface rather than on an SDO service created for the EJB. While that last option did the job, it requires manipulation of the EJB that is to be invoked – to SDO enable it – and that was undesirable and sometimes even impossible.

This article describes about the simplest way to get going with the EJB Binding – Java based – in Patch Set 2 (11.1.1.3.0). Building on this example, you will probably find yourself able to do useful things with it.

The steps we will go through are:

1. Create the EJB that is to be invoked from the Composite application through EJB Binding. Make sure the remote interface is created as well. 2. Deploy this EJB (in this simple example to the same WebLogic Managed Server that is running the SOA More >

Go to Top