Win a copy of Microservices Testing (Live Project) this week in the Spring forum!

omid haghighatgoo

+ Follow
since Jul 11, 2010
Cows and Likes
Total received
In last 30 days
Total given
Total received
Received in last 30 days
Total given
Given in last 30 days
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by omid haghighatgoo

Distributed Applications
CORBA products provide a framework for the development and execution of distributed applications. But why would one want to develop a distributed application in the first place? As you will see later, distribution introduces a whole new set of difficult issues. However, sometimes there is no choice; some applications by their very nature are distributed across multiple computers because of one or more of the following reasons:
• The data used by the application are distributed
• The computation is distributed
• The users of the application are distributed
Data are Distributed
Some applications must execute on multiple computers because the data that the application must access exist on multiple computers for administrative and ownership reasons. The owner may permit the data to be accessed remotely but not stored locally. Or perhaps the data cannot be co-located and must exist on multiple heterogeneous systems for historical reasons.
Computation is Distributed
Some applications execute on multiple computers in order to take advantage of multiple processors computing in parallel to solve some problem. Other applications may execute on multiple computers in order to take advantage of some unique feature of a particular system. Distributed applications can take advantage of the scalability and heterogeneity of the distributed system.
Users are Distributed
Some applications execute on multiple computers because users of the application communicate and interact with each other via the application. Each user executes a piece of the distributed application on his or her computer, and shared objects, typically execute on one or more servers. A typical architecture for this kind of application is illustrated below.
Prior to designing a distributed application, it is essential to understand some of the fundamental realities of the distributed system on which it will execute.
The Java Remote Method Invocation Application Programming Interface (API), or Java RMI, is a Java application programming interface that performs the object-oriented equivalent of remote procedure calls (RPC).
1. The original implementation depends on Java Virtual Machine (JVM) class representation mechanisms and it thus only supports making calls from one JVM to another. The protocol underlying this Java-only implementation is known as Java Remote Method Protocol (JRMP).
2. In order to support code running in a non-JVM context, a CORBA version was later developed.
Usage of the term RMI may denote solely the programming interface or may signify both the API and JRMP, whereas the term RMI-IIOP (read: RMI over IIOP) denotes the RMI interface delegating most of the functionality to the supporting CORBA implementation.
The programmers of the original RMI API generalized the code somewhat to support different implementations, such as a HTTP transport. Additionally, the ability to pass arguments "by value" was added to CORBA in order to support the RMI interface. Still, the RMI-IIOP and JRMP implementations do not have fully identical interfaces.

JShooter (Reflect in Network Framework)
What is JShooter?
JShooter is a framework for distributing application programs on the network. Certainly, you have used RMI, Corba and JMS. Each of aforementioned technologies has its own special problems and at the same time enjoys extraordinary advantages. However, you must be careful about the expenses caused by these technologies. In most cases RMI, Corba and JMS increase the productions’ costs unbelievably. However in other cases they confuse programmers. Years ago, Reflect Oriented Programming was the focus of attention within professional programmers, then Aspect Oriented Programming came into the programming world but instead of reducing the programmer’s task, it causes the professional programmers and even the amateur ones to be confused in many cases. One of the most important capabilities of JShooter is that it makes the “Reflect Oriented Programming” easier to use.
For more information about JSHOOTER goto
download it's doc and shine enterprise library

12 years ago
The Java Web Model Service architecture is based on MVC.It improves all disadvantages ,and add some adavantages points to it.As Struts comes to help us to implement our project based on MVC , we need maplet to implement JWMS architecture.These maplets are based on those old Servlets ,with some new featurs.
Purpose of JWMS architecture is that, to have a JSP page for every job of your actors in UML diagrams. And those all actions start from a request JSP page ,and continue with one or more maplets ,and then finish with a response JSP page (for all possibles response ) through a flow just like your UML diagrams.

Figure 1

Now there isn't any need to make a JSP page for every possible response (for example a proper response for empty fields and an other proper respose for errors ...) like before.Instead, the all things you need is that to create a response jsp page and tag it.A tag for success message a tag for error and so on.
As you see , every thing is very simple.Also, you can be a project manager too !!!
An other ability of maplet is that ,you don't need to carry parameters with yourself by using session or application.Maplet gets all parameters from the first page and cross it to an other maplet or JSP.For reaching these parameters you just need to define a public String variable as the same name of parameter in first JSP page.The content of this variable is the same as user inputted parameter(with out doing any job!).
We are not magicians , we just know how to work with URL !!!
If you want to send any parameter to next maplet ,add it to URL as the same !!!
For more information and knowing how to work with AddURL(),forward(),... read the complete document from below link :

Omid haghighatgoo
J2OS manager
12 years ago