Posts tagged jdeveloper
Although JDeveloper provides loads of libraries out-of-the-box, you often need other libraries in your application. You can easily add these libraries via the project properties. This provides two options: ‘Add Library’ and ‘Add Jar / Directory’. We normally us the Add Library option because it allows to include the JavaDoc and the source code. However make sure that you check the ‘Deployed by Default’ checkbox or else the library will not be included on the classpath and the application will fail with a java.lang.ClassNotFoundException. By the way, we never use Tools -> Manage Libraries because we only use project libraries and never the user or system libraries, because they introduce local dependencies that need to be maintained at every workstation seperately.
We have been struggling quite a bit with a good approach for modularizing our ADF web applications through the use of (stand alone) Task Flows that are developed in independent projects and assembled into a single Web Application from ADF Libraries. In theory, this is a very structured, decoupled way of developing potentially complex ADF Web Applications – while allowing for reuse. The contextual events mechanism in combination with the task flow input parameters allow definition of a clear interface through which to reuse the task flow. So all seems well.
However, when you try to put this theoretical bliss into actual practice, there are some limitations that you run into. One of the tricky issues we had to deal with is: how can we debug our web application when part of the source of the application is reused from ADF Libraries? How can we put breakpoints in the sources that are part of the ADF Library?
On closer inspection, there seems to be a relatively easy way for doing this – using an additional library definition in JDeveloper that refers to the sources that form the foundation of the ADF Library.
Let’s take a quick look at how this would work:
Subversion is a great source control system. One of the great features is it’s branching and merging support. Although many developers avoid it, branching is very powerful and useful and should not be something to be afraid off but something to be familiar with. And for the stable and controlled development is it almost a necessity to master it.
In general we can identify two types of branches: product and feature branches.
- The product branch is normally to support maintenance on a released version while development of the next version continues.
- A feature branch is normally a temporary branch to work on a (complex) change without interfering with the stability of the main development line (trunk) and in the end is incorporated back into the main line again.
Now, while you can work on isolation on the feature branch, there will come a time that you’ll have to integrate (merge) the changes with the trunk. And although subversion does provide extensive merge support, this might get messy with big changes. So it’s a real good idea to keep the feature branch in sync with the trunk and have the changes in the trunk regularly applied to the feature branch too. Actually, this is not so More >
Although it is all about ADF 11g these days there are still some challenges in ADF 10g projects that run at some of my customers. Today I finished a task in which I had to create an updatable table in which the number of shown columns wasn’t known at design time. There is the possibility to create an ADF read only dynamic table, that works more or less like the richfaces columns <rich:columns/> http://livedemo.exadel.com/richfaces-demo/richfaces/columns.jsf?tab=usage&cid=3305454 element. However, I needed an updatable table, but ADF doesn’t know such a component. I had to come up with a different solution. (more…)
In this post I introduce to you one of the new ADF Rich Client components and one way to use it: The Carousel. You can display a set of images through a carousel, an animation effect that switches the emphasis successively between images as the user moves the mouse across them.
You can also have the carousel invoke and respond to partial triggers and display data in master detail relationships. (more…)
Getting started with WebCenter 11g, released on July 1st 2009, is quite easy. What you have to do exactly depends on the environment you work in, the bits and pieces in WebCenter that you want to make use of and the other FMW components that are part of your technology stack. Note that most of the installation steps you have to go through for WebCenter 11g are the same as for SOA Suite 11g – both involve WebLogic 11g, the Repository (Creation Utility against an 11g database) and the creation of a dedicated domain on WebLogic.
If all you are looking for is fiddling around with WebCenter in an isolated development environment, there is a lot you can do by simply adding the WebCenter plugin to JDeveloper 11g (188.8.131.52.x). With the plugin installed, you can work with (most) WebCenter Services, ,most of the WebCenter Composer and Framework facilities – including run time page customization and consuming portlets. Just go to the Help Window in JDeveloper, select the Check for Updates option and select the WebCenter 11g extension to be installed. A JAR of some 150 Mb or so is downloaded, JDeveloper is restarted, the integrated WebLogic Server is extended with WebCenter functionality More >