Jboss Seam Framework

May 25, 2011 Leave a comment

Jboss Seam is an extremely robust framework that is used to develop next generation Web 2.0 applications through the integration of technologies. Different types of technologies including Asynchronous JavaScript and XML (AJAX), Java Server Faces (JSF), Enterprise Java Beans, Business Process Management and Java Portlets are unified and used to develop powerful Jboss Seam framework.

In order to remove any kind of complexity at both the architectural and API level, Seam has been designed and developed right from the scratch. Therefore this ensures that Jboss Seam Framework  developers do not find any kind of a problem when working on this particular platform. It allows Java developers to assimilate sophisticated web applications through the usage of simple java objects, a little of XML and componentized UI widgets. The ease of use and simplicity of this platform will allow easy integration with the JBoss Enterprise Service Bus and Java Business Integration. JBoss is also one of the key aspects even in the development of Enterprise Application Platform. The immense potential of JBoss can be harnessed to create unique and scalable Java applications.

There are undoubtedly a significant number of reasons on why Jboss Seam is the preferred platform and some of them are:

  • JBoss Seam offers a unique concurrency model, which was developed keeping in mind AJAX. Unlike AJAX, this state-managed model allows concurrent, asynchronous and fine-grained requests.
  • EJB3.0 is an ideal component to be used in transactional business components but the earlier Java and application
    frameworks would not support EJB. The same is not the case with SEAM, which is designed to allow developers to use EJB 3.0 everywhere.
  • JSF offers extensive component libraries and as well as other addons but just using JSF can be burdensome for XML and result in lack of important features. JBoss Seam easily swaps difficult XML configurations with annotations and thereby reduces code. Seam easily integrates JTA, JPA and EJB 3.0 and therefore it makes it necessary for JSF users.
Categories: Java Development

E-learning System with Java

July 20, 2010 Leave a comment

The article is intended to provide information on E learning System made with Java platform. It explains various functionality added to this application with the functionality provided by Java.

E-Learning application on Java includes the environment in which the learner interacts with content, knowledge, skill. E-Learning application enables the management and facilitation of a range of learning and teaching activities and services.

Some companies use Java e-learning application when training their employees or spreading out a short lecture. Universities use Java e-learning application in specific courses for programs .E-Learning system also to increases the learning capacity of students, employee etc.

Our Java E-Learning Solution provides flexible and automated way of learning. This solution can be helpful to institutions, organizations, universities, colleges etc. This Solution is multilingual and provides total flexibility to customize and manage whole E-Learning solution in a user friendly way with easy user interfaces. Main feature of the application is performance, lightweight and developed using advance Java programming technologies and tools.

E-Learning administrator has a total control over the application and users of the application. Administrator can define different roles for users and depend on those privileges user can access those many functionalities of system. E-Learning solution provide administrator to define course area and define course and can relate course to particular course area. Define course topics and can relate course topics with particular course. Administrator can define questions related to course topics and define test based on course.

Administrator can also set maximum number of attempts user can give tests and it can also set Level for tests. Administrator can relate course with user so that tests available inside course will automatically accessible to users. Administrator can analyze system using reporting tools available with this e learning system.

Administrator can view how many tests held from which course and of which course area using course report and how many users given tests in which course using course reports and user related records using user report. User can attend test and can view result as well as view history of tests given by user using report tools. User can also download documents related to course.

This system is developed by latest j2ee technologies like spring, Hibernate and Most stable application server like web logic and Oracle Database. We can also customize this system for other application and database.

Author: This article was exclusively shared by Aegis Software who has been providing Java Development Services for systems like Java e learning System. Visit us to explore and learn more of our solutions.

Leveraging the Restlet Routing System for Your Java Web Services

June 12, 2010 Leave a comment

As Restlet applications have multiple important purposes, it is essential to understand how they are structured and then used at runtime by Restlet projects. In Figure 1, we illustrate their overall design into three concentric layers, from the most generic and reusable on the edge to the most specific in the center.

An application can handle both inbound server calls and outbound client calls, which are depicted using arrows.

Inbound and Outbound Calls in Restlet Applications

An inbound call first goes though a service filtering layer, which is common to all resources contained in the application. This layer can handle things such as automatic decoding of compressed representations or support for partial representations. Then, the call goes through a user routing layer, where you will be able to do your own filtering, for example, for authentication purpose and to route the request to its target resource, typically based on its URI. Finally, the call can reach the resource handling layer, where a target resource will handle the request and reply with a response that will return to the original client, following the same path. This request processing flow that we summarized is followed by a single Java thread in charge of the given call.

In addition, client calls can be initiated by applications, typically, while handling server calls inside server resources, by creating client resources. A client resource sends a request through the upper layers, before it reaches the target resource (typically on a remote host), and finally comes back with a response. The user routing layer will have a chance to filter or dispatch the request, for example, to handle automatic authentication, while the upper service filtering layer will be able to provide services such as automatic decompression of representations received in responses.

The Restlet Routing System

The user routing layer can be pretty limited, providing just a simple Restlet subclass that traces incoming calls. How can you build a filter that blocks some IP addresses or route calls to target server resource based on their URI?

Java Developers

Categories: Java Development

Java and Security – Introduction to Java Security Policies for Java Developers

April 23, 2010 Leave a comment

This post provide information on the security enhancement added by the Java on version upgrades. Java developers can get better idea on Java development with keeping application secure at the same time.

Java modes of use

  • Applets:              Auto-run when view web page
  • Applications:   Traditional program
  • Beans:                 Component (like OLE object)
  • Servlets:            Server-side applications
  • Aglets:               Intelligent Agents
  • Doclets:            Configurable doc generator
  • Embedded Systems
  • Smart Cards (“JavaCard”)

Security Related Capabilities of Java

JDK 1.0 (Fall 1995)
Policy: “Sandbox” for applets; others unlimited
Mechanisms: SecurityManager, Bytecode verifier, Classloader
JDK 1.1 (Spring 1997)
Policy: can also grant total trust to signed applets
Mechanisms: Java Archive (JAR), crypto-related APIs
Inflexible: Too little or too much privilege

Netscape & Microsoft Extensions
Enabled more flexible approaches
Incompatible with each other and with Sun
J2SE (Java 2 Platform Standard Edition) (Fall 1998)
Includes SDK 1.2 and runtime

Policy: can also grant fine-grained privileges to specific applets/classes based on source and/or signatures
Mechanisms: AccessController, ProtectionDomain, CodeSource, Permission, GuardedObject, …
“Java Plug-in” supports both Microsoft & Netscape

Java 1.0 Security Policy

Sandbox Policy (for applets)
Cannot access local filesystem or devices
Network connections only to applet load source
Cannot invoke any local program or library
“Untrusted” indicator on top-level windows
Cannot manipulate basic classes or another ThreadGroup
Appletviewer CL can be initialized to vary these
Applications unlimited in 1.0; can code a policy

Security Manager

Class defines check methods called by system
E.G. “checkRead(String filename)”
Method throws exception if invalid
To create a security policy from scratch:
Create a subclass (code) & instantiate
Install using System.setSecurityManager; this cannot be revoked or replaced
This is used to create the Sandbox
If no SecurityManager installed, all privileges granted

JDBC and JDBC drivers provided by Oracle

March 31, 2010 3 comments

What is JDBC?

JDBC stands for Java Database Connectivity which is a kind of API that allows Java platform to access DBMS. This JDBC API consists of a set of interfaces and classes written in Java.

With this set of interfaces and classes, Java developers can establish connection with multiple databases and communicate directly to the database for performing various operations on them.

JDBC drivers provided by Oracle

Oracle provides 4 different types of JDBC drivers to use them under different installation and deployment scenarios. The 11.2.0 drivers can access Oracle 9.0.1 and higher versions. While all oracle JDBC drivers are almost similar, some features apply only to JDBC thin driver and some applies only to JDBC OCI drivers.

JDBC OCI (Oracle Call Interface):

With the help of Java Native Methods, this JDBC Type 2 driver calls entrypoints in an underlying C Library. This C library is called OCI which interact with an Oracle database. The JDBC OCI driver requires an Oracle client installation of the same version as the driver.

The use of native methods makes the JDBC OCI driver platform specific. Oracle supports Solaris, Windows, and many other platforms. This means that the Oracle JDBC OCI driver is not appropriate for Java applets, because it depends on a C library.

Starting from 10.1.0, the JDBC OCI driver is available for install with the OCI Instant Client feature, which does not require a complete Oracle client-installation. Please refer to Oracle Call Interface for more information.

JDBC Thin client-side driver

This is a JDBC Type 4 driver that uses Java to connect directly to Oracle. It implements Oracle’s SQL*Net Net8 and TTC adapters using its own TCP/IP based Java socket implementation. The JDBC Thin driver does not require Oracle client software to be installed, but does require the server to be configured with a TCP/IP listener.

Because it is written entirely in Java, this driver is platform-independent. The JDBC Thin driver can be downloaded into any browser as part of a Java application. (Note that if running in a client browser, that browser must allow the applet to open a Java socket connection back to the server.)

JDBC Thin server-side driver

This is another JDBC Type 4 driver that uses Java to connect directly to Oracle. This driver is used internally within the Oracle database. This driver offers the same functionality as the client-side JDBC Thin driver (above), but runs inside an Oracle database and is used to access remote databases.

Because it is written entirely in Java, this driver is platform-independent. There is no difference in your code between using the Thin driver from a client application or from inside a server. (Java Development)

JDBC Server-Side Internal driver

This is another JDBC Type 2 driver that uses Java native methods to call entrypoints in an underlying C library. That C library is part of the Oracle server process and communicates directly with the internal SQL engine inside calls and thus avoiding any network traffic. This allows your Java code running in the server to access the underlying database in the fastest possible manner. It can only be used to access the same database.

The use of native methods makes the JDBC Server-Side Internal driver platform specific. This server-side internal driver is fully consistent with the client-side drivers and supports the same features and extensions.

Information Source: JDBC Drivers Provided by ORACLE

Categories: Java Development Tags: , ,

Java developers and thumbs down to JCP

March 13, 2010 Leave a comment

Many proficient Java Developers are seen keep themselves away from JCP (Java Community Process) and use to prefer implement their new ideas being part of smaller communities. A community which used to give quick answer in minutes once upon a time has now become so much complex and difficult to stay for Java developers.

Being specific we can say that JCP has actually lost its focus. They have no more image as a solution oriented community, but it has now become more like rubber stamps which sanction the specification entered by big players.

Has the Java API exploded?
Sue Spielman is president and senior consulting engineer of Switchback Software LLC and an author of several Java-related books. She says that there have been many Java Specification Requests (JSRs) proposed that have “exploded the Java API.”

“While this isn’t necessarily a bad thing, it certainly is a challenge to the Java developer who tries to stay up on the happenings in the JCP,” Spielman said. “This could very well be one of the reasons that in the eyes of the developers, the JCP is bloated and crawling at a snail’s pace. It has become impossible for anyone to keep up on all of the JSRs that are currently in proposal and various review stages.

“One suggestion I have is that JCP restructure so that there is a tiered level to appropriate JSRs. The main tier would be one that affects the most people in the Java community. The expert groups are composed of organizations and individuals that are concerned (or interested) in the JSR. The review process takes into account the public opinions, but that doesn’t necessarily mean that the public opinion will make it into the final JSR.

Some credibility and respect might be regained by using a voting method of the public Java community (not just the expert group), similar to the process used in open source development. The timeframes can be limited, thereby speeding up the process, and the voting Java community will ultimately be deciding what is important for their Java development.

Programming scope for Java Developers

March 13, 2010 2 comments

Java developers can create two types of programs applets and application. A Java Application Development is a program that runs on your computer under the operating system of that computer. This application is just like C or C++.

Always remember that when you create application java is not much different from any other computer language. But the main advantage of Java Application is that you can run these programs anywhere. And Java Developers can develop an application from low end to very high end uses. But the ability to create applets makes Java important. And applet is an application designed to be transmitted over the internet and executed by a java compatible web browser. An applet is a tiny Java program dynamically downloaded across the network just like a video-clip, image and sound file.

But the most important difference is that an applet is an intelligent program not just media file or animation. In other words you can say that applet is a program that can react to user input and dynamically change- not just run the same animation or sound over and over. Always remember that Java Developers can implement many ideas with this platform.

Follow

Get every new post delivered to your Inbox.