As you probably know JSF 2 is a major upgrade over JSF 1.2. One of the major additions to this version of JSF is standard Ajax support. This article covers Ajax features in JSF 2. If you are familiar with RichFaces and specifically the a4j:support tag then learning how to use Ajax features in JSF 2 is going to be very easy. Many concepts and features are being carried over from RichFaces. Let’s start. JSF 2 comes with one tag that provides Ajax functionality. The tag is called f:ajax (sounds familiar to a4j:support – right?) When I do RichFaces trainings, I like to divide the core ideas into three parts: sending an Ajax request, partial view rendering and partial view processing. I will use the same approach here.
As you probably know JSF 2 is a major upgrade over JSF 1.2. One of the major additions to this version of JSF is standard Ajax support. This article covers Ajax features in JSF 2. If you are familiar with RichFaces and specifically the a4j:support tag then learning how to use Ajax features in JSF 2 is going to be very easy. Many concepts and features are being carried over from RichFaces. Let’s start. JSF 2 comes with one tag that provides Ajax functionality. The tag is called f:ajax (sounds familiar to a4j:support – right?) When I do RichFaces trainings, I like to divide the core ideas into three parts: sending an Ajax request, partial view rendering and partial view processing. I will use the same approach here.
James Gosling, acknowledged as the father of Java, has left Oracle, apparently unable or unwilling to make the transition from Sun. In a blog post Friday he said he resigned on April 2, the Friday before. His only comment on why he left was more provocative than explanatory. “As to why I left,” he wrote, “it’s difficult to answer: Just about anything I could say that would be accurate and honest would do more harm than good. The hardest part is no longer being with all the great people I’ve had the privilege to work with over the years.”
James Gosling, acknowledged as the father of Java, has left Oracle, apparently unable or unwilling to make the transition from Sun. In a blog post Friday he said he resigned on April 2, the Friday before. His only comment on why he left was more provocative than explanatory. “As to why I left,” he wrote, “it’s difficult to answer: Just about anything I could say that would be accurate and honest would do more harm than good. The hardest part is no longer being with all the great people I’ve had the privilege to work with over the years.”
Adaptivity provides integrated solutions that automate IT Delivery optimization across enterprise computing environments. In this exclusive Q&A for Cloud Computing Journal with SYS-CON's Cloud Computing Expo Conference Chair, Jeremy Geelan, Tony Bishop – CEO of Adaptivity – discusses Adaptivity’s “IT Transformation Factory” and their Cloud Computing strategy.
Under JDeveloper 11g ADF Business Components introduced the support for Groovy expressions. Among other benefits this allows JDeveloper programmers to skip many trivial Java programming tasks with a shorthand Groovy expression. Grant Ronald's Introduction to Groovy Support in JDeveloper and Oracle ADF 11g provides a good compliment to the Fusion Guide on Groovy expressions.
The Groovy support includes the ability to reference attributes of Entity Objects and View Objects. For instance you may create a transient attribute TotalCost in an InvoiceLines Entity Object based on the Groovy expression "Cost * Quantity" referencing the same named Entity Object attributes:
As you become more familiar with the use of Groovy expressions you'll realize you can also call the functions of the underlying attribute type. For instance a String attribute FullName would support the Groovy expression "FullName.toLowerCase()".
However there is a catch. When calling functions of a specific attribute, say calling the oracle.jbo.domain.Number add() function on the Quantity Number attribute, at runtime you might discover a runtime error such as:
(oracle.jbo.JboException) JBO-29000: Unexpected exception caught: groovy.lang.MissingMethodException, msg=No signature of method: java.lang.Long.add() is applicable for argument types: (java.lang.Integer) values: [1]
This comes as a surprise as the Fusion Guide tells us the Number attribute type is backed by the oracle.jbo.domain.Number class supplied by Oracle.
What's happening is that the Groovy expression evaluator is undertaking some implicit datatype conversions/casts on our behalf with the underlying attributes. In order to make this easier to understand I've documented the type conversions for you. The following table gives you the Type Name as selected in the EO/VO attribute editor, the Java Type you'll see in the resulting EntityImpl and ViewRowImpl classes, and then the Groovy Type they'll be cast to during a Groovy expression evaluation.
You'll note with the Groovy Types sometimes they are in fact the oracle.jbo.domain class, but in others they're the parent class. And for some types there is no oracle.jbo.domain equivalent, just a java.lang type. It's all a bit inconsistent but hopefully the table gives you the appropriate type for your attribute:
| Type Name | Java Type | Groovy Type |
| Array | oracle.jbo.domain.Array | - |
| BFileDomain | oracle.jbo.domain.BFileDomain | - |
| BigDecimal | java.math.BigDecimal | java.math.BigDecimal |
| BlobDomain | oracle.jbo.domain.BlobDomain | oracle.jbo.domain.BlobDomain |
| Boolean | java.lang.Boolean | java.lang.Boolean |
| Byte | java.lang.Byte | java.lang.Byte |
| Char | oracle.jbo.domain.Char | java.lang.String |
| Character | java.lang.Character | java.lang.Character |
| ClobDomain | oracle.jbo.domain.ClobDomain | oracle.jbo.domain.ClobDomain |
| DBSequence | oracle.jbo.domain.DBSequence | java.lang.Long |
| Date | oracle.jbo.domain.Date | java.sql.Date |
| Double | java.lang.Double | java.lang.Double |
| Float | java.lang.Float | java.lang.Float |
| Integer | java.lang.Integer | java.lang.Integer |
| Long | java.lang.Long | java.lang.Long |
| NClobDomain | oracle.jbo.domain.NClobDomain | oracle.jbo.domain.NClobDomain |
| Number | oracle.jbo.domain.Number | java.lang.Long |
| Object | java.lang.Object | java.lang.Object |
| OrdAudioDomain | oracle.ord.im.OrdAudioDomain | oracle.ord.im.OrdAudioDomain |
| OrdDocDomain | oracle.ord.im.OrdDomain | oracle.ord.im.OrdDomain |
| OrdImageDomain | oracle.ord.im.OrdImageDomain | oracle.ord.im.OrdImageDomain |
| OrdImageSignatureDomain | oracle.ord.im.OrdImageSignatureDomain | oracle.ord.im.OrdImageSignatureDomain |
| OrdVideoDomain | oracle.ord.im.OrdVideoDomain | oracle.ord.im.OrdVideoDomain |
| REF | oracle.sql.REF | - |
| Raw | oracle.jbo.domain.Raw | - |
| RowID | oracle.jbo.domain.RowID | java.lang.String |
| Short | java.lang.Short | java.lang.Short |
| String | java.lang.String | java.lang.String |
| Timestamp | oracle.jbo.domain.Timestamp | java.sql.Timestamp |
| TimestampLTZ | oracle.jbo.domain.TimestampLTZ | java.sql.Timestamp |
| TimestampTZ | oracle.jbo.domain.TimestampTZ | java.sql.Timestamp |
Under JDeveloper 11g ADF Business Components introduced the support for Groovy expressions. Among other benefits this allows JDeveloper programmers to skip many trivial Java programming tasks with a shorthand Groovy expression. Grant Ronald's Introduction to Groovy Support in JDeveloper and Oracle ADF 11g provides a good compliment to the Fusion Guide on Groovy expressions.
The Groovy support includes the ability to reference attributes of Entity Objects and View Objects. For instance you may create a transient attribute TotalCost in an InvoiceLines Entity Object based on the Groovy expression "Cost * Quantity" referencing the same named Entity Object attributes:
As you become more familiar with the use of Groovy expressions you'll realize you can also call the functions of the underlying attribute type. For instance a String attribute FullName would support the Groovy expression "FullName.toLowerCase()".
However there is a catch. When calling functions of a specific attribute, say calling the oracle.jbo.domain.Number add() function on the Quantity Number attribute, at runtime you might discover a runtime error such as:
(oracle.jbo.JboException) JBO-29000: Unexpected exception caught: groovy.lang.MissingMethodException, msg=No signature of method: java.lang.Long.add() is applicable for argument types: (java.lang.Integer) values: [1]
This comes as a surprise as the Fusion Guide tells us the Number attribute type is backed by the oracle.jbo.domain.Number class supplied by Oracle.
What's happening is that the Groovy expression evaluator is undertaking some implicit datatype conversions/casts on our behalf with the underlying attributes. In order to make this easier to understand I've documented the type conversions for you. The following table gives you the Type Name as selected in the EO/VO attribute editor, the Java Type you'll see in the resulting EntityImpl and ViewRowImpl classes, and then the Groovy Type they'll be cast to during a Groovy expression evaluation.
You'll note with the Groovy Types sometimes they are in fact the oracle.jbo.domain class, but in others they're the parent class. And for some types there is no oracle.jbo.domain equivalent, just a java.lang type. It's all a bit inconsistent but hopefully the table gives you the appropriate type for your attribute:
| Type Name | Java Type | Groovy Type |
| Array | oracle.jbo.domain.Array | - |
| BFileDomain | oracle.jbo.domain.BFileDomain | - |
| BigDecimal | java.math.BigDecimal | java.math.BigDecimal |
| BlobDomain | oracle.jbo.domain.BlobDomain | oracle.jbo.domain.BlobDomain |
| Boolean | java.lang.Boolean | java.lang.Boolean |
| Byte | java.lang.Byte | java.lang.Byte |
| Char | oracle.jbo.domain.Char | java.lang.String |
| Character | java.lang.Character | java.lang.Character |
| ClobDomain | oracle.jbo.domain.ClobDomain | oracle.jbo.domain.ClobDomain |
| DBSequence | oracle.jbo.domain.DBSequence | java.lang.Long |
| Date | oracle.jbo.domain.Date | java.sql.Date |
| Double | java.lang.Double | java.lang.Double |
| Float | java.lang.Float | java.lang.Float |
| Integer | java.lang.Integer | java.lang.Integer |
| Long | java.lang.Long | java.lang.Long |
| NClobDomain | oracle.jbo.domain.NClobDomain | oracle.jbo.domain.NClobDomain |
| Number | oracle.jbo.domain.Number | java.lang.Long |
| Object | java.lang.Object | java.lang.Object |
| OrdAudioDomain | oracle.ord.im.OrdAudioDomain | oracle.ord.im.OrdAudioDomain |
| OrdDocDomain | oracle.ord.im.OrdDomain | oracle.ord.im.OrdDomain |
| OrdImageDomain | oracle.ord.im.OrdImageDomain | oracle.ord.im.OrdImageDomain |
| OrdImageSignatureDomain | oracle.ord.im.OrdImageSignatureDomain | oracle.ord.im.OrdImageSignatureDomain |
| OrdVideoDomain | oracle.ord.im.OrdVideoDomain | oracle.ord.im.OrdVideoDomain |
| REF | oracle.sql.REF | - |
| Raw | oracle.jbo.domain.Raw | - |
| RowID | oracle.jbo.domain.RowID | java.lang.String |
| Short | java.lang.Short | java.lang.Short |
| String | java.lang.String | java.lang.String |
| Timestamp | oracle.jbo.domain.Timestamp | java.sql.Timestamp |
| TimestampLTZ | oracle.jbo.domain.TimestampLTZ | java.sql.Timestamp |
| TimestampTZ | oracle.jbo.domain.TimestampTZ | java.sql.Timestamp |
Oracle reported its financial results for the third quarter of fiscal 2010 ended in February, and sales of Oracle's products sans Sun rose by 7 percent. Including one month of sales attributable to Sun, Oracle's revenues were up 17 percent, to $6.4 billion. Sun has brought in $273 million in hardware systems sales since the acquisition, and another $185 million is attributed to hardware support. It also touted its Exadata Storage Server introduced over a year ago as "the fastest growing product in Oracle's history". Oracle's history of strategic acquisitions have always compensated for any intrinsic lapses in innovation. The latest entrant to its portfolio is no exception. The company's Cloud plans seem to have gained more buzz after the Sun acquisition. Armed with its own enterprise apps in conjunction with Sun's home grown server and storage wares, Oracle is doggedly intensifying its integrated platform services that could tread on the territory of the other lead (ex)contender for Sun, IBM.
Oracle reported its financial results for the third quarter of fiscal 2010 ended in February, and sales of Oracle's products sans Sun rose by 7 percent. Including one month of sales attributable to Sun, Oracle's revenues were up 17 percent, to $6.4 billion. Sun has brought in $273 million in hardware systems sales since the acquisition, and another $185 million is attributed to hardware support. It also touted its Exadata Storage Server introduced over a year ago as "the fastest growing product in Oracle's history". Oracle's history of strategic acquisitions have always compensated for any intrinsic lapses in innovation. The latest entrant to its portfolio is no exception. The company's Cloud plans seem to have gained more buzz after the Sun acquisition. Armed with its own enterprise apps in conjunction with Sun's home grown server and storage wares, Oracle is doggedly intensifying its integrated platform services that could tread on the territory of the other lead (ex)contender for Sun, IBM.
CA has looked into its crystal ball and now realizes that it might have been a tad ambitious in forecasting earnings of $1.60-$1.71 this fiscal year, pushing Wall Street to expect $1.69. It'll probably come in on the low end of its guidance, it says, something Credit Suisse, for one, blames on expenses. So, apparently, does CA. Therefore, in the name of "profitable growth" and efficiency, it's going to terminate a thousand people, about 8% of its global workforce, to right-size for its new cloud computing strategy.
CA has looked into its crystal ball and now realizes that it might have been a tad ambitious in forecasting earnings of $1.60-$1.71 this fiscal year, pushing Wall Street to expect $1.69. It'll probably come in on the low end of its guidance, it says, something Credit Suisse, for one, blames on expenses. So, apparently, does CA. Therefore, in the name of "profitable growth" and efficiency, it's going to terminate a thousand people, about 8% of its global workforce, to right-size for its new cloud computing strategy.
Research In Motion (RIM) on Tuesday released updated Java and Web-based development tools for the BlackBerry platform. The BlackBerry Java Plug-In for Eclipse v1.1 and the BlackBerry Web Plug-in v2.0 offer new capabilities that make it even easier to create feature-rich applications. The BlackBerry Widget SDK (Software Development Kit) v1.0 and the BlackBerry Java SDK v5.0, which includes more than 20,000 APIs, provide unparalleled access to BlackBerry smartphone hardware features, native BlackBerry software applications and other unique system capabilities of the BlackBerry Application Platform. Using the new tools developers can quickly and easily build web-based BlackBerry Widgets or Java applications that leverage the unique benefits of the BlackBerry Application Platform to seamlessly share information across and interact with core BlackBerry applications or other third party applications. These are personalized and contextualized applications that can integrate with a BlackBerry smartphone's inbox, calendar, address book and other native BlackBerry applications to deliver a highly engaging user experience.
Research In Motion (RIM) on Tuesday released updated Java and Web-based development tools for the BlackBerry platform. The BlackBerry Java Plug-In for Eclipse v1.1 and the BlackBerry Web Plug-in v2.0 offer new capabilities that make it even easier to create feature-rich applications. The BlackBerry Widget SDK (Software Development Kit) v1.0 and the BlackBerry Java SDK v5.0, which includes more than 20,000 APIs, provide unparalleled access to BlackBerry smartphone hardware features, native BlackBerry software applications and other unique system capabilities of the BlackBerry Application Platform. Using the new tools developers can quickly and easily build web-based BlackBerry Widgets or Java applications that leverage the unique benefits of the BlackBerry Application Platform to seamlessly share information across and interact with core BlackBerry applications or other third party applications. These are personalized and contextualized applications that can integrate with a BlackBerry smartphone's inbox, calendar, address book and other native BlackBerry applications to deliver a highly engaging user experience.
Apple says it had sold upwards of 300,000 of its newfangled $499-$699 Wi-Fi-only iPads by Saturday midnight, the widget’s first day out, around half what some people thought but on par with the iPhone. The number includes pre-orders and the Wall Street Journal says the stores didn’t sell out. The new iPad owners, reportedly mostly the Apple faithful who already own Macs and iPods, immediately downloaded a million+ applications and some 250,000-odd eBooks (Apple now has a 60,000-strong eBook store called iBooks of course).
Apple says it had sold upwards of 300,000 of its newfangled $499-$699 Wi-Fi-only iPads by Saturday midnight, the widget’s first day out, around half what some people thought but on par with the iPhone. The number includes pre-orders and the Wall Street Journal says the stores didn’t sell out. The new iPad owners, reportedly mostly the Apple faithful who already own Macs and iPods, immediately downloaded a million+ applications and some 250,000-odd eBooks (Apple now has a 60,000-strong eBook store called iBooks of course).
In a clear case of Tweedledum and Tweedledee, it appears that Novell is going to start supporting KVM virtualization like Red Hat does with the Service Pack 1 release of SUSE Linux Enterprise Server (SLES) 11 this summer. According to the HOpen blog it’ll handle guest systems for SLES 9-11, Windows Server 2003 and 2008, XP, Vista and Red Hat Enterprise Linux (RHEL) 4-5. Host systems can run 32- or 64-bit guests and support up to 16 virtual CPUs, 512GB of RAM and eight network interfaces. Like Red Hat, Novell will support both Xen and KVM – at least in the short term – even preferring Xen for the moment –but where Citrix and its Xen alliance with Novell wind up remain to be seen.
In a clear case of Tweedledum and Tweedledee, it appears that Novell is going to start supporting KVM virtualization like Red Hat does with the Service Pack 1 release of SUSE Linux Enterprise Server (SLES) 11 this summer. According to the HOpen blog it’ll handle guest systems for SLES 9-11, Windows Server 2003 and 2008, XP, Vista and Red Hat Enterprise Linux (RHEL) 4-5. Host systems can run 32- or 64-bit guests and support up to 16 virtual CPUs, 512GB of RAM and eight network interfaces. Like Red Hat, Novell will support both Xen and KVM – at least in the short term – even preferring Xen for the moment –but where Citrix and its Xen alliance with Novell wind up remain to be seen.
I often get asked about ‘REST to SOAP’ transformation use cases these days. Using an SOA gateway like SecureSpan to perform this type of transformation at runtime is trivial to setup. With SecureSpan in front of any existing web service (in the DMZ for example), you can virtualize a REST version of this same service. Using an example, here is a description of the steps to perform this conversion. Imagine the geoloc web service for recording geographical locations. It has two methods, one for setting a location and one for getting a location. See below what this would look like in SOAP.
I often get asked about ‘REST to SOAP’ transformation use cases these days. Using an SOA gateway like SecureSpan to perform this type of transformation at runtime is trivial to setup. With SecureSpan in front of any existing web service (in the DMZ for example), you can virtualize a REST version of this same service. Using an example, here is a description of the steps to perform this conversion. Imagine the geoloc web service for recording geographical locations. It has two methods, one for setting a location and one for getting a location. See below what this would look like in SOAP.
Our new book "Enterprise Development with Flex " made the Amazon bestseller's list of ... Java books: See the list here. This list is refreshed every hour so I'm not sure what place you are going to find it at, but at the time of this writing it's #20. Help us to move up the list by doing you know what :)
Our new book "Enterprise Development with Flex " made the Amazon bestseller's list of ... Java books: See the list here. This list is refreshed every hour so I'm not sure what place you are going to find it at, but at the time of this writing it's #20. Help us to move up the list by doing you know what :)
In the Twitter project we’ve been working on, one of the map’s we’re running breaks the text of a Tweet down into words. Because we can’t assume that any data will be available for access via a database, etc, we attach a couple of values that we’re interested for later analysis to the word, attach More >
In the Twitter project we’ve been working on, one of the map’s we’re running breaks the text of a Tweet down into words. Because we can’t assume that any data will be available for access via a database, etc, we attach a couple of values that we’re interested for later analysis to the word, attach More >
A federal jury Tuesday found that Novell owns the Unix copyrights. They never transferred to the Santa Cruz Operation and so they never transferred to its descendent SCO. A decision in SCO's favor would have opened the door for it to pursue its original multibillion-dollar case against IBM and to levy a tax on every one of the thousands of Linux systems out there. Without the copyrights SCO has no standing to go after IBM. SCO was also hoping to collect perhaps at much $215 million in lost business from Novell and an uncalculated amount of punitive damages, enough to put itself back on its feet.
A federal jury Tuesday found that Novell owns the Unix copyrights. They never transferred to the Santa Cruz Operation and so they never transferred to its descendent SCO. A decision in SCO's favor would have opened the door for it to pursue its original multibillion-dollar case against IBM and to levy a tax on every one of the thousands of Linux systems out there. Without the copyrights SCO has no standing to go after IBM. SCO was also hoping to collect perhaps at much $215 million in lost business from Novell and an uncalculated amount of punitive damages, enough to put itself back on its feet.