- Ext JS Ext.ux.YoutubePlayer - The Ext.ux. YoutubePlayer is a user extension that utilizes the Youtube Chromeless API. You can embed any Youtube video into Ext native controls and place it in your application. It's like a mediaplayer built on top of Ext JS and the Youtube API.
- InfoQ: Real World Web Services - In this presentation, Scott Davis provides a pragmatic, down-to-earth introduction to Web services as used in the real world by public sites, including SOAP-based, REST and POX-style examples. While the buzzword density leaves nothing to be desired, the p
- Microsoft and Sourcesense Partner to Contribute to Open Source, Apache POI to Support Ecma Office Open XML File Formats: Companies to collaborate on the development of open source solutions for the Microsoft Office product suite. - Microsoft and Sourcesense announced that the two companies will collaborate on the strategy, development and deployment of open source solutions for the MS Office. One of the initial goals is contributing to the development of a new version of Apache POI
- Watch Out - Adobe Is Slowly Building an Online Empire - ReadWriteWeb - Adobe seems to "get it" - they know that software is moving online, but they're betting on the co-existence of both online software with their corresponding offline apps, like those built with Adobe AIR
- Brian Alvey: The Audacity of Code - Code in the face of difficulty. Code in the face of uncertainty. The audacity of code!
- GigaOM Interview: Ray Ozzie, Chief Software Architect, Microsoft Corp. - GigaOM - Fresh from his Mix’08 keynote, Microsoft’s Chief Software Architect and industry luminary, Ray Ozzie, spent some time on the phone with me, discussing everything from the company’s services strategy, to the economics of cloud computing, to the relev
- Cobra: Java HTML Parser - The all-Java Cobra HTML Toolkit includes a HTML DOM parser that can be used independently of the rendering engine. The following are some of its features: * It implements W3C HTML DOM Level 2 interfaces. It parses "street HTML", can be used in headless mo
- Coding Horror: Is Eeyore Designing Your Software? - I think sometimes programmers forget how much work it is to create software at large companies. What may seem like a no-brainer five line code change to us on the outside is perhaps five man-weeks of work once you factor in all the required process overhe
- Dabblers and Blowhards - As for the mystical connection between painters and programmers, the famous Lloyd Bentsen put-down keeps coming to mind…. You, sir, are no painter. And while you hack away at your terminal, or ride your homemade Segway, we painters and musicians are goi
- Google's five-year plan to hit Enterprise continues (Cemaphore helps Google out) « Scobleizer — Tech geek blogger - Enterprises will never move wholesale over to Gmail and Google’s other offerings. Users just don’t like that kind of change. There would be revolt at work, if CTOs tried to force it.
Posts tagged as:
soap
Daily del.icio.us for March 26th through March 27th
{ 0 comments }
Daily del.icio.us for January 9th
- enunciate - Enunciate is a Web service deployment framework. It is not another Web service stack implementation. Rather, Enunciate leverages existing Web service technologies to provide a mechanism to build, package, deploy, and to clearly, accurately deliver your We
- Ryan Heaton's Blog: Web Service Programming for the Masses, Part I: Developing the Web Service API - This is the first part of a tutorial will walk you through developing a Web service API that could meet the requirements of all of the above-mentioned use cases. For the sake of clarity and brevity, we'll keep the operations simple, but by the time we're
- Bob Rhubart's Blog: The SOA Governance Prescription - A significant part of getting your SOA to do what it's supposed to do is getting the people involved in the SOA to do what they're supposed to do
- Pinaki Poddar's Blog: Slice: OpenJPA for Distributed Databases - Slice is a OpenJPA plug-in for horizontally-partitioned, distributed databases. As distributed databases are being increasingly common in enterprise IT ecosystem, I considered extending OpenJPA to transact against a set of databases instead of a a single
- Top 10 SQL Server Integration Services (SSIS) and DTS tips - Whether you plan to migrate SQL Server Data Transformation Services (DTS) packages to SQL Server Integration Services (SSIS) or run DTS packages in SQL Server 2005, this expert advice can help
- How to Dynamically and Iteratively Populate An Excel Workbook from SQL Server - SQL Server Central - In this article, I will show you how to create a new Excel output file and populate the file with discrete spreadsheets containing specific data from a database. We will Integration Services for the task
- Application Development Trends - SpringSource Offers Spring.NET 1.1 - SpringSource is offering the final release of Spring.NET 1.1. Spring.NET 1.1 supports the ASP.NET Framework for Web development. It enables dependency injection for pages, controls, modules and providers
- InfoQ: Bruce Johnson discusses Google Web Toolkit - Google Web Toolkit (GWT) tech lead Bruce Johnson discusses the design of GWT, how GWT converts Java into JavaScript, community involvement with GWT, new features in GWT 1.4, and the philosophy behind GWT.
- Book Review: Google Web Toolkit Applications - Google Web Toolkit, by Ryan Dewsbury, is an excellent book for those looking to use GWT to good advantage, covering most areas of GWT functionality in exceptional detail. It covers software engineering, server integration, custom component composition, CS
- Adobe - Developer Center : Using BEA Workshop Studio and Java to create Flex-based RIAs - In this tutorial, I walk you through the steps to creating an RIA using Java for the back-end business logic and Flex for the front-end view of the application. I will use the BEA Workshop Studio (Flex Bundle) to create a simple Java mid-tier and a simple
- smarturls-s2 - Google Code - SmartURLs-S2 is a Struts 2 plugin that provides a rich set of convention based handling for web applications. In addition, it also provides a component framework for developing web application components in separate codebases and the deploying them into a
- Building Struts 2 Apps Without XML Gluecode - In this article, we jettison XML gluecode for "convention over configuration". Using the SmartURLs plugin for Struts 2, we can autowire Action classes to page templates with search-engine-optimized URIs.
- Embedding Flickr Photos - In this article, I'll explain how to fetch data from Flickr using a proxy client library and displaying the data in a Visual Web Application page.
- Atlassian Developer Blog - How to build an Atlassian plugin - There's a single command that will download Tomcat, install Confluence or JIRA, start them up, load sample data, then install your plugin for testing. And once you've started the application once, you can just leave it running while you uninstall and rein
Related posts
Daily del.icio.us for Aug 25, 2007
- James Duncan Davidson ? Remembering Java Naming Blunders Past - The value of a brand is created by the public that uses it, not by the company that owns it. Brands are funny things. They make us choose products out of a sense of comfort instead of an honest evaluation.
- Raible Designs | Display Tag 1.1.1 Released - Display Tag version 1.1.1 has been released. This is a bug fix release
- Java.net - Unified Expression Language for JSP and JSF - This article looks at the unified expression language (EL), which has been added to the JavaServer Pages Standard Tag Library (JSTL) specification in order to overcome problems when integrating the JavaServer Pages (JSP) EL with the JavaServer Faces EL.
- Web Tier to Go With Java EE 5: Summary of New Features in JSP 2.1 Technology - The expert groups have worked together on the upcoming releases of JSP 2.1 and JavaServer Faces 1.2 technologies in Java EE 5 to fix these integration issues and make sure that the two technologies work together seamlessly.
- jmockit: Project Home Page - JMockit consists of a single class with a small set of static methods, which allow arbitrary methods and constructors of any other class to be replaced by mock implementations at runtime.
- Mock Objects: Shortcomings and Use Cases - This article looks at Mock Objects, a testing technique from the XP community that offers a way to test our code in isolation by simulating those external dependencies. As with any other tool, we need to be careful and avoid overusing them.
- Jeffrey Zeldman Presents : Eric Meyer's CSS Sculptor - Eric Meyer's CSS Sculptor, created in collaboration with WebAssist, makes it drop-dead easy to create standards-compliant, two- and three-column CSS layouts and includes 30 of the most common web page layouts, coded the way Eric Meyer would code them.
- IT Efforts: Struts2 + Spring + JUnit - Hopefully this entry serves as some search engine friendly documentation on how one might unit test Struts 2 actions configured using Spring
- InfoQ: The Secret Sauce of Highly Productive Software Development - This article stands as a reminder that the Agile approach already offers many learning practices and mechanisms ? are they all being used to best advantage, to serve your team and your business?
- XFire Creator Joins MuleSource - Diephouse is the creator of XFire, the high performance open source SOAP framework. He joined MuleSource as the software architect focused on expanding Mule's web services capabilities.
- Introduction To iBatis - This tutorial will focus on using iBatis in a Java application and Abator, a code generation tool
- Spring Web Services 1.0 Released | Springframework.org - After two years of development, we are pleased to announce that Spring Web Services 1.0 is now available. Spring Web Services is a product of the Spring community focused on the creation of document-driven, contract-first web services.
Related posts
Daily del.icio.us for Aug 21, 2007 through Aug 25, 2007
- James Duncan Davidson ? Remembering Java Naming Blunders Past - The value of a brand is created by the public that uses it, not by the company that owns it. Brands are funny things. They make us choose products out of a sense of comfort instead of an honest evaluation.
- Raible Designs | Display Tag 1.1.1 Released - Display Tag version 1.1.1 has been released. This is a bug fix release
- Java.net - Unified Expression Language for JSP and JSF - This article looks at the unified expression language (EL), which has been added to the JavaServer Pages Standard Tag Library (JSTL) specification in order to overcome problems when integrating the JavaServer Pages (JSP) EL with the JavaServer Faces EL.
- Web Tier to Go With Java EE 5: Summary of New Features in JSP 2.1 Technology - The expert groups have worked together on the upcoming releases of JSP 2.1 and JavaServer Faces 1.2 technologies in Java EE 5 to fix these integration issues and make sure that the two technologies work together seamlessly.
- jmockit: Project Home Page - JMockit consists of a single class with a small set of static methods, which allow arbitrary methods and constructors of any other class to be replaced by mock implementations at runtime.
- Mock Objects: Shortcomings and Use Cases - This article looks at Mock Objects, a testing technique from the XP community that offers a way to test our code in isolation by simulating those external dependencies. As with any other tool, we need to be careful and avoid overusing them.
- Jeffrey Zeldman Presents : Eric Meyer's CSS Sculptor - Eric Meyer's CSS Sculptor, created in collaboration with WebAssist, makes it drop-dead easy to create standards-compliant, two- and three-column CSS layouts and includes 30 of the most common web page layouts, coded the way Eric Meyer would code them.
- IT Efforts: Struts2 + Spring + JUnit - Hopefully this entry serves as some search engine friendly documentation on how one might unit test Struts 2 actions configured using Spring
- InfoQ: The Secret Sauce of Highly Productive Software Development - This article stands as a reminder that the Agile approach already offers many learning practices and mechanisms ? are they all being used to best advantage, to serve your team and your business?
- XFire Creator Joins MuleSource - Diephouse is the creator of XFire, the high performance open source SOAP framework. He joined MuleSource as the software architect focused on expanding Mule's web services capabilities.
- Introduction To iBatis - This tutorial will focus on using iBatis in a Java application and Abator, a code generation tool
- Spring Web Services 1.0 Released | Springframework.org - After two years of development, we are pleased to announce that Spring Web Services 1.0 is now available. Spring Web Services is a product of the Spring community focused on the creation of document-driven, contract-first web services.
- Struts2 Tutorials - Several tutorials are available to help you get started with the framework, from all-purpose "soup to nuts" tutorials to specialty tutorials on portlets and database access.
- GnilronEye 1.1, system monitoring solution, released - GnilronEye 1.1, a java-based system monitoring solution, is now available for download. GnilronEye 1.1 introduces an advanced http-monitoring feature and a new report feature that include sgraphs of the monitored items.
- A CSS styled table version 2 | Veerle's blog - In 2005 I wrote an article about styling a table with CSS. After receiving so many requests I finally decided to give in and write another tutorial.
Related posts
Daily del.icio.us for Mar 21, 2007 through Mar 27, 2007
- Enunciate Your Web Service API - From your source code, Enunciate will build a fully-documented, interoperable web application in the form of a web application archive (war file). A consolidated, annotated XML contract is generated at compile-time. Each service class is published as a SO
- Uni-Form - One Form to Rule Them All - Uni-Form is an attempt to standardize form markup (xhtml) and css, "modularize" it, so even people with only basic knowledge of these technologies can get nice looking, well structured, highly customizable, semantic, accessible and usable forms.
- sq1-struts2 - Google Code - 'Apache Struts 2 from Square One' is a training course designed for people who want to create Java web applications, not just quickly, but correctly. Training sessions include a technology primer and a coding exercise. This Project hosts materials used by
- Scand Unveils dhtmlxCombo, Ajax Combobox with Autocomplete - Scand LLC announced the release of new Ajax-based UI component dhtmlxCombo v1.0. It's a JavaScript combobox control which provides suggestion search and automatic completion functionality to web-based applications
- Ultimate htaccess Examples | evolt.org - Here's my list of the ultimate htaccess code snippets and examples that I use all the time.
- Dr. Dobb's | Adobe Woos Web Developers With Apollo Alpha | March 19, 2007 - Apollo is something of an anti-AJAX: It brings elements of online interaction to a desktop client application. Like Flash, Apollo includes a free runtime that users will need to download to their PCs. Using Adobe's free Apollo development kit, programmers
Related posts
Life is beautiful with XMLBeans and XStream
XML creation, parsing and processing with Java has gotten so much easier with tools like XMLBeans, XStream and many other such tools. I personally love XMLBeans and XStream and I try to use them for all of my XML processing needs. While they both consume XML, they solve different problems. XMLBeans allows you to process XML by binding it to Java types using XML schema that has been compiled to generate Java types that represent schema types. XStream on the other hand allows you to serialize objects to XML and back again using special reflective secret sauce.
I've been using these tools for many years now and so you tend to forget just how useful and powerful they are and how productive they make you. Case in point – A friend of mine came to me for help. He was building an application that would allow him to resale items from Amazon on his site and he wanted to use the Amazon eCommerce Web Services to search for products programmatically and update a local database that housed his content. Having played with Amazon E-Commerce Service (ECS) before, I offered to write up a simple application that would make the Web Services call, process the results and present them back to you.
Amazon's ECS is an API that allows you to access Amazon data and functionality through a Web site or Web-enabled application. ECS follows the standard Web services model: users of the service request data through XML over HTTP (REST) or SOAP and data is returned by the service as an XML-formatted stream of text. In addition to the WSDL, ECS also provides XML schemas for validating the XML output of REST requests. So I decide to use XMLBeans to create my type system using the XML Schema provided by Amazon. XMLBeans provides you with a utility (scomp) to compile your schema into Java XMLBeans classes and metadata. To generate the Java code, use the following command:
scomp –jar amznws.jar AWSECommerceService.xsd
This generates a jar file named amznws.jar, which will contain all of the code needed to bind an XML instance to the Java types representing your schema. In my application, I use HttpClient to make my REST request and then use the XMLBeans generated jar file to process the result. Here's a snippet of code from my sample class:
if (StringUtils.isNotBlank(searchCriteria)) {
String url = "http://webservices.amazon.com/onca/xml?Service=AWSECommerceService&" +
"AWSAccessKeyId=*YOUR_KEY*&AssociateTag=*YOUR_TAG*&Operation=ItemSearch&SearchIndex=Books&" +
"Keywords=" + searchCriteria + "&ResponseGroup=Large,Images";
GetMethod method = new GetMethod(url);
List results = new ArrayList();
try {
int statusCode = client.executeMethod(method);
if (statusCode != HttpStatus.SC_OK) {
log.error("Method failed: " + method.getStatusLine());
}
// Read the response body.
InputStream in = method.getResponseBodyAsStream();
String xmlPayload = parseISToString(in);
// Set up the validation error listener.
ArrayList validationErrors = new ArrayList();
XmlOptions validationOptions = new XmlOptions();
validationOptions.setErrorListener(validationErrors);
ItemSearchResponseDocument items = ItemSearchResponseDocument.Factory.parse(xmlPayload);
if (items != null) {
ItemsDocument.Items[] itemsArray = items.getItemSearchResponse().getItemsArray();
for (int i = 0; i < itemsArray.length; i++) {
AmazonWSObject amzn = processResults(itemsArray, i);
results.add(i, amzn);
}
// During validation, errors are added to the ArrayList
boolean isValid = items.validate(validationOptions);
// Print the errors if the XML is invalid.
if (!isValid) {
for (Object validationError : validationErrors) {
log.error(">> " + validationError + "\n");
}
}
} else {
log.error("Search returned no results");
}
} catch (HttpException e) {
log.error("Fatal protocol violation: " + e.getMessage());
} catch (IOException e) {
log.error("Fatal transport error: " + e.getMessage());
log.error(e.toString());
} catch (XmlException e) {
log.error(e.toString());
} finally {
method.releaseConnection();
}
return results;
} else {
return null;
}
As you can tell, HttpClient makes the REST call a snap and XMLBeans makes processing the results easy as well. In total, I spent 3-4 hours getting the application working and a lot of the time was spent figuring out the data set returned from Amazon and trying to come up with a meaningful example. Here is a zip file with the IDEA project that has all the stuff needed to make this work including a simple JSP and a JUnit test class.
Links of Interest:
- Amazon Web Services
- Amazon ECS WSDL
- Amazon ECS XML Schema
- Localized editions of xsd and wsdl
- XMLBeans
- XStream
- HttpClient