YOUR FEEDBACK
Rapid Module Development for DotNetNuke
MICHEAL SMITH wrote: GO TO THE LINK, U HAVE EVERYTHING U WANT THERE. MICHEAL...
SOA World Conference
Virtualization Conference
$50 Savings Expire May 23, 2008... – Register Today!

2007 West
GOLD SPONSORS:
Active Endpoints
Your SOA Needs BPEL for Orchestration
BEA
Virtualized SOA: Adaptive Infrastructure for Demanding Applications
Nexaweb
Overcoming Bandwidth Challenges with Nexaweb
TIBCO
What is Service Virtualization?
SILVER SPONSORS:
WSO2
Using Web Services Technologies and FOSS Solutions
Click For 2007 East
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts

SYS-CON.TV
TOP THREE LINKS YOU MUST CLICK ON


WebLogic Workshop 8.1 IDE Fundamentals
Speed up your development and testing

Digg This!

As a software architect and developer, I've used a number of IDEs for my J2EE development. I have my priority list of features that I look for in all the IDEs but I wasn't able to find one that gave me everything I wanted.

If an IDE satisfied some of my needs, it completely ignored my other needs. The BEA WebLogic Workshop 8.1 IDE, however, delivers most of the features I've been looking for. Now I'm a happy WebLogic Workshop user and I want to share some of the best features with you.

IDE Features
One of the strengths of BEA WebLogic Workshop is its ability to do pretty much all the development using this tool. It is a one-stop shop for J2EE development. The following list gives you an idea of what you can do with it. Please note that this is not the complete list:

  • Java source
  • Web services
  • JSPs
  • HTML
  • CSS
  • EJBs
  • Page flows
  • Java process definitions
  • Java controls
  • Schemas and XMLBeans
  • Ant integration
  • Configurable external tools
  • IDE debugging
  • Test form capability
  • Integration with BEA WebLogic server 8.1
In this article I'll focus on the basic IDE features and HTML/JSP editing and deployment capabilities of BEA WebLogic Workshop 8.1.

The Editor
You create and build an application in the WebLogic Workshop editor. The Workshop IDE operates on one application at a time. The application tab presents a tree view of the application and the files tab presents an alphabetical, filtered list of all files in the application.

The Edit Pane displays either a source view or a design view appropriate for the file being edited. When you select an entity in the Edit Pane, the entity's properties are displayed in the Property Editor. The Property Editor displays the properties for the currently selected entity in the Edit Pane.

The Document Structure Pane displays a structured view of the methods and fields in the class or interface being edited.

The Output Pane displays various forms of information that are generated when you run or debug the application.

The Server Status area indicates whether the associated instance of BEA WebLogic Server is currently running.

The Status Bar displays messages indicating the state of the IDE.

The Data Palette displays a structural list view of the methods or attributes of controls and tags. As you drag items from the Data Palette to the Edit Pane, code is inserted in the current entity to access the item you dragged. The palette contains often-used items you may wish to add to the entity in the Edit Pane. You may drag an item from the palette to the Edit Pane to create a new item of that type.

Applications
An application in BEA WebLogic Workshop is the collection of all resources and components that are deployed as a unit to an instance of BEA WebLogic Server. It is also the top-level unit of work that you manipulate with the WebLogic Workshop IDE. In the IDE, you may have at most one application open at a time. A WebLogic Workshop application is a J2EE Enterprise Application and ultimately produces a J2EE Enterprise Application Archive (EAR) file. An application may contain projects, libraries, and modules.

Projects
Projects are a project group's related files that comprise a component of an application. WebLogic Workshop supports a number of project types, including Web projects, Web services projects, Control projects, EJB projects, Java projects, Schema projects, portal projects, and integration projects. You may also create custom project templates to meet the needs of your organization.

File Types
BEA WebLogic Workshop 8.1 supports a number of file types, including EJB, JCS (Java Control Source), JCX (Java Control Extensions), JSP, JWS (Java Web Service), JPD (Java Process Definition), JPF (Java Page Flow), WSDL, DTF (Data Transformation Format), and a number of portal file types. The WebLogic Workshop IDE adapts itself in several ways to the type of file being edited.

Libraries and Modules
In addition to projects, each BEA WebLogic Workshop application also contains two folders named Libraries and Modules. These folders can contain compiled Java code that you want to be available to the components of the application. The products of the various project types are automatically placed in the Libraries or Modules folder as appropriate. For example, the JAR file containing the XMLBeans Java classes derived from the XML Schemas in a Schema project is automatically placed in the Libraries folder. However, you may also copy additional JAR files directly into the Libraries or Modules folders to make them available to the rest of your application.

Testing and Debugging
You can use the BEA WebLogic Workshop integrated debugger to debug your application. The debugger allows you to set break points, step through your code line-by-line, view local variables, set watches on variables, and view the call stack and exception information. If you're developing against a remote server, you can also debug against that remote server. Break points and other debugging information will be stored on the local machine.

In order to debug an application, you must have a way to exercise the application as a real client would. WebLogic Workshop includes a test browser in which you may test Web services and Web applications. When you run a Web service, the test browser automatically loads Test View, a tool for exercising Web services.

HTML/JSP Editor
In the Workshop JSP/HTML editor you can create a Web project or import an existing Web application and create JSP files in that project. Web projects are typically used to expose enterprise application logic via a user interface. The user interface is constructed from Java Server Pages (JSPs), which are Web pages that can interact with server resources to produce dynamic content. BEA WebLogic Workshop defines Java Page Flows that define and contain the logic required to connect multiple JSPs. Web services are typically used to expose enterprise application logic to applications (as opposed to users). Individual Web service interfaces are published via Web Services Description Language (WSDL) files.

Each Web project or Web service project ultimately produces a J2EE Web Application Archive (WAR) file. Note that the name of a project becomes part of the public URL of each resource located within that project. You should choose your project names with that in mind.

BEA WebLogic Workshop offers the following features that all Web developers need in their IDE.

Editing Scriptlets
When you write Java code in a scriptlet, the editor shows all the public members and methods in the class. Any syntax errors are indicated using a red squiggle as you edit the file. The scriptlets also inherit the IDE settings for Java code, displayed using appropriate syntax coloring. Any errors are displayed as a little red or green line on the scroll bar and you can go to the specific error line by clicking on the scroll bar line.

Editing HTML
A palette window displays the HTML controls like Table, Image, and Hyperlink that can be dragged and dropped on the design view. The document structure window shows the layout of the document that makes it easy to debug and navigate to a certain section in the page. In the source view, WebLogic Workshop offers code completion for HTML tags. This works not only for the property names of the tags but also for property values (see Figure 1).

    

Using Tag Libraries
Any tag library configured in the web.xml is automatically recognized by the IDE and organizes all the tags in the palette window. This gives you the ability to drag and drop any tag into the design view or source view. WebLogic Workshop does a perfect job by placing the tag with any required properties. When you select a tag, the properties can also be edited conveniently using the property window. Figure 2 shows the Property Editor for the struts bean:write tag.

 

NetUI Tag Library
NetUI is a powerful BEA tag library that covers HTML, data binding, and templates. NetUI tags wrap struts tags, so they offer features like form beans, forwards, global forwards, etc. These tags are used extensively in page flow files.

Syntax Coloring
BEA WebLogic Workshop 8.1 comes with a fully customizable editor. You can customize almost anything, including the comments, annotations, keywords, and scriptlets.

Document Structure
The document structure panel displays a tree view of the document for easy navigation. Document structure is also useful when editing XML files, for example an ant build.xml or Struts struts-config.xml file. It displays the tags with the names specified in a name parameter. Figure 3 shows the document structure panel for the struts-config.xml file in the Jakarta struts example.

 

Testing and Debugging
Any WebLogic Workshop-enabled Web application can be debugged using the IDE by setting break points. You can run and test any JSP from the editor using the test form feature.

External Tools
WebLogic Workshop's external tools are a powerful feature to extend the IDE to suit your needs. Workshop provides substitution strings to customize the development environment. In a typical development environment, you develop the sources in a work area and copy them to the deployment area for unit testing. One of the challenges I faced before was manually copying the JSPs to the appropriate directory for testing. With WebLogic Workshop I can create an external tool task that can copy any file or a directory that I point at to the deployment directory through the substitution strings that give you access to the current file, directory, etc.

Following are some of the substitution strings available in WebLogic Workshop

  • ${file.path}: Full path of current file
  • ${file.name}: File name of current file
  • ${file.dir}: Directory of current file
  • ${project.dir}: Root of current project
  • ${application.dir}: Root of the open application

    To create a tool, go to Tools->IDE Properties->Tools and click "New Tool". Enter the tool name, command, and directory from which the command should be executed. The command may include the substitution strings listed above. For example your Copy JSP command could be:

    xcopy /s ${file.path} <Deployment Directory>webappjsp

    You can also specify any script or batch file to execute. When I change any JSP, I run this external tool to copy just this JSP to the deployment directory.

    If you want to see the output of the command in the IDE, check the "Capture Output" check box. If you want to see the output in a separate command window, check the "Use interactive shell" option.

    Using Ant with WebLogic Workshop
    BEA WebLogic Workshop projects can be built with the IDE build or using a customized ant build. You can export the IDE build to an ant build file by going to Tools ->Project Properties->Project->Build and clicking "Export to Ant file". You can also use this file to begin and customize your build process.

    To use your own ant build process, go to Tools->Project Properties->Project->Build and select "Use Ant build". Click the "Browse" button in "Ant Settings" and choose the Ant build XML file. Then select the build target in the drop-down box. It lists all the available tasks in the build XML file.

    Conclusion
    BEA WebLogic Workshop 8.1 is a great IDE for developing J2EE applications and improves productivity by a great magnitude.

    This article described the basics of the IDE and showed the features of the JSP/HTML editor. We also looked at how to use ant to build your application and how to create external tools to speed up development and testing. If you haven't used BEA WebLogic Workshop, I encourage you to look at it for help in developing your J2EE applications.

  • About Anbarasu Krishnaswamy
    Anbarasu Krishnaswamy has over 15 years of IT industry experience, nine of which were with BEA. In his current role as the Enterprise Architect Lead, he leads the enterprise architecture and SOA practices for the central region professional services at BEA. As a SOA practitioner, he has helped several customers with SOA transformation and implementation. His experience also includes design and development of Java/J2EE applications, client/server computing, Web development, and enterprise application integration (EAI). Anbarasu holds a MBA from NIU and an MS in computer science and engineering.

    BEA WEBLOGIC LATEST STORIES
    3rd International Virtualization Conference & Expo: Themes & Topics
    From Application Virtualization to Xen, a round-up of the virtualization themes & topics being discussed in NYC June 23-24, 2008 by the world-class speaker faculty at the 3rd International Virtualization Conference & Expo being held by SYS-CON Events in The Roosevelt Hotel, in midtown
    Microsoft To Keynote 4th International Virtualization Conference & Expo
    Mike Neil is general manager for virtualization strategy in the Windows Server Division at Microsoft. Mike is focused on the delivery of the Windows virtualization technology, including Windows Server 2008 Hyper-V, Microsoft Hyper-V Server and Virtual PC 2007. Mike also directs the tec
    Virtualization Meets DaaS - Desktop-as-a-Service
    After a $1.5 million angel round, Desktone, which was started in 2006 by Eric Pulier, who also started SOA Software, US Interactive and IVT, picked up $17 million in first-round funding about a year ago from Highland Capital Partners, SoftBank Capital, Citrix Systems and the China-base
    Engelbart's Usability Dilemma: Efficiency vs Ease-of-Use
    The mouse was the original idea of Doug Engelbart who was the head of the Augmentation Research Center (ARC) at Stanford Research Institute. Engelbart's philosophy is best embodied, in my opinion, in the design of another device that he invented, the five-finger keyboard - with keys li
    Web 2.0 Is Fundamentally About Empowering People
    'Unlocking content to be remixed into new business value' is the driver of Web 2.0 in the enterprise, says Rod Smith, IBM VP of Emerging Internet Technologies, in this Exclusive Q&A with Jeremy Geelan on the occasion of IBM's release of a new technology created by IBM researchers, code
    Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java?
    Here is a question that I have been pondering on and off for quite a while: Why do 'cool kids' choose Ruby or PHP to build websites instead of Java? I have to admit that I do not have an answer. Why do I even care? Because I am a Java developer. Like many Java developers, I get along w
    SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
    SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
    Click to Add our RSS Feeds to the Service of Your Choice:
    Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
    myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
    Publish Your Article! Please send it to editorial(at)sys-con.com!

    Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

    SYS-CON FEATURED WHITEPAPERS

    MOST READ THIS WEEK
    ADS BY GOOGLE
    BREAKING NEWS FROM THE WIRES
    AmberPoint Extends SOA Governance to Apache ServiceMix, BEA AquaLogic Service Bus 3.0, BEA WebLogic Integration, Cisco ACE XML Gateway, JBoss Enterprise Application Platform and Oracle Fusion
    AmberPoint announced today that it has extended the reach of its runtime SOA governance