Archive for January, 2006
HTML Post Loading Resources Framework (AJAX Based) – Part 2 – Loading and pasting simple content
Jan 31st
In a previous article – Ajax-based Post Loading of resources in HTML pages – for reuse of resources and fast user feedback – I have introduced the concept of "post loading resources". Post loading resources to me is the process of having the browser retrieve additional contents for an HTML Page after it has been loaded, much like the way the browser loads image-resources driven by the IMG tags in the document. In the previous article, I have listed a number of reasons why to use a post loading of resources approach and what kind of resources these can be and what we can do with them.
I will use this article to introduce the core of the "PLR framework" (not more than a few bits of JavaScript, most of them copied from someone clever) and illustrate it by having my very sparse HTML document flesh out itself inside the browser by post loading additional resources. Some of these resources are not on the same server as the original HTML document and have to be handled by a Server Side proxy, as is explained in my post Proxy Servlet for AJAX requests to multiple, remote servers, the code of which I will reuse in this article.
What I need are the following elements to get started
- a way to make asynchronuous HtppRequests from the browser – multiple, simultaneous en potentially unrelated requests; these request perform the actual post loading of resources
- a simple way of registering the need for a resource to be post-loaded, including its URL and the target for that content
- a way to trigger the post load resources to be executed once the main HTML document is loaded
JDeveloper 10.1.3 is released. At last.
Jan 30th
It has finally happened: JDeveloper 10.1.3 has been released. No news headlines on the OTN frontpage yet, but to be found on the JDeveloper download page:
That went quickly, the last few weeks. I am not 100% certain that is the production release (it does not explicitly say so), but then again, it has no disclaimer about Preview or Early Adopter or whatever. So let’s assume it is the real thing. Great! 
OK, Steve Muench provides the missing information on his blog:
Ajax-based Post Loading of resources in HTML pages – for reuse of resources and fast user feedback
Jan 30th
This article discusses a generic method for Post Loading Resources
in HTML pages. What do I mean by that? Just as your browser will fire
additional requests, to potentially multiple web-servers when needed,
to fetch images specified in your HTML page by the IMG tag or
JavaScript and CSS resources that are imported in the HTML page, I
would like to be able to have the browser fire additonal requests for
downloading additional HTML content. Loading the HTML page should be as
quick as can be. Pages that require large sets of data for populating
select items or trees should ideally load that data after the page is
available to the user in the browser (after the onLoad event has
fired).
This article describes how to implement this post-load
of resources – after the onLoad is fired on the body element and
therefore after the page has become available for user interaction -
using AJAX technologies. A next installment in a series of four will go into the actual implementation: HTML Post Loading Resources Framework (AJAX Based) – Part 2 – Loading and pasting simple contents. Part 3 is – HTML Post Loading and Processing Resources using AJAX – Part 3: multiple, dependent resources and custom processing and Part 4 HTML
Post Loading and Processing Resources using AJAX – Part 4: defining a
refresh interval, client side XSLT transformations and RSS processing
Re-assigning Roles to an Owner in Oracle Designer Role Management
Jan 24th
This article came about as a result of the questions asked by Victor Bax with regard to an earlier post: Oracle Designer – Script for verifying the privileges assigned to roles against the Module Table Usages. His concerns were with regard to the roles management, an extension to Oracle Designer in the Oracle Designer Web Assistant and the Repository Object Browser. In Victor’s Repository, they had accidentally removed the owner and original creator or the roles as a Repository User. As a result, they could no longer administrate those roles. After re-creating this user – same name, same database user – in the Repository, they still could not manage the roles in the Security Manager. In this article, I explain why this is the case and how it can be corrected.
Read the rest of this entry »
First Steps with Apache WSIF – Calling out to WSIF-alized SOAP WebServices and Java Classes
Jan 24th
SOA, WebService and web service, WSDL, UDDI, BPEL and WSIF, Axis, SOAP, JAVA-RPC etc. etc. If Google has not found this blog by now… Seriously, these are all hot topics. Integration, service publication, orchestration – we are bombarded with all of these. For a workshop we will shortly organize at AMIS, UI have attempted to create some simple introductions to some of these concepts. One of them is WSIF and using it for decoupling Service providers and their implementation from the service consumers. Not by implementing all Services as SOAP WebServices, as you might expect, but by describing the Services using WSDL – even if they are not WebServices in the strict SOAP sense of the word – and having WSIF figure out how to make the call.
In this article I will describe the first steps you could make with Apache WISF to call Java based services – a fancy expression for some public static Java Methods – as if they were Web Services. The Web Service Invocation Framework (WSIF) allows us to call semi-WebServices from our Java application. These services are described through a WSDL but not asssociated with a SOAP binding.
Read the rest of this entry »
Sun and Oracle intensify cooperation
Jan 23rd
Last week, Sun and Oracle announced a 20+ year period of more intense cooperation. According to this link http://www.sun.com/2006-0111/feature/index.html Sun and Oracle will forcus on these three main areas:
- Collaboration on Java technology, with Oracle’s continued commitment to Java technology for the next 10 years
- Oracle’s endorsement of the NetBeans IDE, which will fuel
innovation through open source software and community-based development - Offering the leading real-world performance of Oracle databases and
business applications on Sun’s hot x64 processor-based servers,
multicore UltraSPARC processor-based servers, and storage systems
This has lead to some speculation within AMIS. On January 12 we had one of our Knowledge Center evenings and one of the discussions was about the future of JDeveloper. The above announcement may indicate that JDeveloper will cease to exist in the end. However, Thomas Kurian says on this OTN article
"We are currently leading three different groups
within the Eclipse Foundation for Java and BPEL technologies, and we
are actively involved in integrating our Fusion Middleware products
with Eclipse. Oracle is focused on JDeveloper and Eclipse. We certainly
think Sun’s NetBeans initiative is important in the marketplace, and
we’re watching it very closely. But as of right now, Oracle is focused
on JDeveloper and Eclipse and we have no plans to adopt either NetBeans
or any of its technology. Any statements to the contrary by anyone else
in the industry are not true."
So, I guess JDeveloper will still be a point of focus for Oracle. So, would anyone care to speculate on what this close cooperation would mean to NetBeans?
AMIS Query on WebService Security and Administration using the Oracle WebServices Manager – and sneak preview of the Enterprise Service Bus
Jan 23rd
Service Oriented Architecture is the Architecture Design Pattern of today. Using standard WebService interfaces for functionality published by legacy applications to external consumers, we can easily reuse such functionality and even construct new processes from existing ’services’. SOA is made possible by some important industry standards, such as SOAP WebServices, WSIF and more recently BPEL for orchestration of WebService calls and WS-Security. In addition, several major players in the industry have released BPEL containers and other essential infrastructure components for putting a SOA together. In the AMIS Query of 27th January 2005, we have taken a good look at Oracle BPEL Process Manager, guided by Sandor Nieuwenhuijs from Oracle. On Tuesday 14th February, we are going for another stroll in this territory. Sandor (Senior Principal Product Manager, Oracle Fusion Middleware) will let us in on the secrets of the Oracle WebServices Manager (OWSM) – a WebService Gateway (based on Oblix CoreSV that Oracle acquired early in 2005). OWSM is primarily used for Security. We will look at that aspect, but also pay attention to Logging, Monitoring, defining and reporting on Service Level Agreements, Content Based routing of WebService messages etc.
In addition to this in depth excursion of OWSM, we will also have a Sneak Preview of Oracle ESB – the Enterprise Service Bus.
See for more on ESB: Enterprise Service Bus A low-cost framework for increased flexibility, reusability and responsiveness
The session starts at 15.30, with an Introduction, Presentation and Demonstration. Then we will have dinner and from 19.00 onwards, there is a hands-on workshop in our ClassRoom. The AMIS Query takes place in the AMIS building, Edisonbaan 15 in Nieuwegein. If you would like to attend this AMIS Query, please go to the following URL for registration: AMIS Query on SOA, WebServices and Security.
Read the rest of this entry »
Calling Stored Procedures using plain SQL – For when SQL is allowed but calls to Stored Procedures are not
Jan 22nd
While investigating the relatively new EJB 3.0 Persistence API, I came under the impression that the specification does not cater for Stored Procedures. In general, there seem to be more instances when plain SQL – ordinary SELECT statements against tables and views – are supported but calls to Stored Procedures, written for example in PL/SQL for Oracle Databases, are not. All Object Relational Mapping frameworks for Java/RDBMS bridging for example support plain SQL, but are limited for use of PL/SQL or other stored languages. At any rate, being able to invoke a stored procedure through ordinary select statements is usually much easier to implement.
In this article, I will look at creating wrappers for PL/SQL procedures that allow them to be invoked from external environments, for example Java Applications using EJB 3.0 Persistence or other ORM frameworks that do not readily cater for CallableStatements to stored procedures. It turns out to be relatively simple to implement – do not expect anything spectacular. Yet the apporach discussed can be useful in certain situations.
Note: I am still trying to find out whether the EJB 3.0 Persistence API does indeed exclude CallableStatements and Stored Procedures; for the time being – after having carefully read the specs – that has to be my assumption. The EntityManager interface does also not include a getConnection() method that would allow us to create a JDBC CallableStatement directly on the JDBC connection that the EntityManager itself is also using.
Skype 2.0 with Video Support released
Jan 20th
Just announced, Skype 2.0 has been released. This version also supports Video calls! Have a look at http://www.skype.com/products/for more info. Click the "Video call" link at the bottom of the page to get a screenshot.
Generate a native Excel file with SQLX
Jan 20th
I wanted to generate an Excel file with data coming from an Oracle database. One of the best ways to do this is to generate an Microsoft Excel XML file. Starting from Office 2003 this XML format is supported. This way you are able to generate a native Excel file in stead of a CSV file.
In a previous post I explained how SQLX can be used to generate XML. With SQLX I was able to generate the Excel XML with only one query. The input data (Excel cell data) is supplied into the query by using a table of objects. This table of objects can be instantiated and filled by any query that supplies the data that you want to have in your Excel file. The advantage of this table of objects is that the Excel data is provided by a parameter making the query generic.




