Categories

  • people from to throw things at?? How about people who will split their paychecks? That would count.. F.ing lame!
  • An excellent post on delivering real-time updates from .NET to JavaScript via WebSockets by using WebORB for .NET: http://t.co/8ONjyw59
  • We're working on some cool samples demonstrating Sencha component integration with WebORB's websockets and data management. Stay tuned.
  • For all Flexers out there, check out the following blog post, looks like a problem in ArrayCollection serialization: http://t.co/qbZuTEhy

Archives

Integrating Windows Phone Applications with Java, .NET and PHP

If you develop mobile applications for Windows Phone odds are you will need to integrate it with your backend services, which may be in .NET, Java or PHP. There are several points of integration including remote procedure calls, data push from Java or .NET, publish-subscribe messaging and so on. Some time ago we conducted a webinar where we discussed various integration strategies for Windows Phone applications. A recording of the webinar is now available online. The recording consists of five parts (each linked with the next one at the end of the videos). You can watch the webinar below or see it on our webinars pages (.NET webinars, Java webinars):

WebORB webinars for Java and .NET

We have done several webinars over the past few months. The webinars are uploaded to the Midnight Coders YouTube Channel. To make it easier to navigate to the webinars and between the their parts, we added pages on our site with the links to the recorded videos. You can access these pages at:

WebORB for .NET webinars include:

  • Android and WebORB for .NET
  • WebORB in the Cloud (integration with Microsoft Azure)
  • Flex and .NET video streaming, video recording, remote shared objects and data push

WebORB for Java webinars include:

  • Android and WebORB for Java
  • WebORB for Java 4.1 overview
  • WebORB in the Cloud (integration with Google App Engine)
  • What BlazeDS cannot do (WebORB as an alternative to LCDS and BlazeDS)

WebORB and Grails Integration

We first announced Grails integration back when we released WebORB for Java 4.1. Today we have uploaded a new set of WebORB for Java Docs, which include the documentation describing the integration between WebORB for Java and Grails. The docs also include a detailed tutorial providing step-by-step instructions for creating a Grails application, deploying WebORB and developing a sample service. The tutorial is available at: http://www.themidnightcoders.com/fileadmin/docs/java/v4/grails_example_application.htm

Finally, the Grails integration has been reviewed in a webinar we conducted back in March. The video where the Grails integration is reviewed is linked below, make sure to fast forward to 5m:30sec into the video:

Developing Android Apps with WebORB

android and weborbThe idea of Universal Mobile Connectivity™ is quickly becoming a reality as we announce our support for Android integration. Before I delve into the details, let me jump onto my soapbox for a moment… ;)

WebORB is a powerful, client-agnostic technology enabling client/server integration at many different levels. The integration includes RPC (remote procedure calls) for a wide range of service models, publish-subscribe data messaging, video/audio recording and streaming, ultra-simple data management API/runtime and development productivity tools that actually work and help devs focus on what they do best. As the number of Android applications is growing, an army of developers are looking for ways to quickly and efficiently integrate phone-based applications with server-side technologies. For the most basic connectivity you can hear some people suggesting JSON (which we support, btw), some (even more old-school people) suggest SOAP web services or perhaps ancient-as-dinosaurs HTTP GET/POST type of integration. Will these approaches work? Sure, with enough persistence and a ton of billable hours, you can get anything to work. Will it cost a lot to develop? you bet! Will it scale? very unlikely. Will it be easy to maintain and evolve? I hardly doubt it. After all, it is 2011 and it is definitely time to realize that a well-done client/server integration is really in the heart of any successful application, whether it is an enterprise system or a silly game for a mobile device. Welcome to the 21st century, it is time to get serious about integration :) [Jumping off the soapbox]

Whether you are a Java developer or you build apps using Flex/AIR or Android, the topic of client-server integration is not very-well defined or prescribed. However, WebORB as a client/server integration server provides a very powerful solution for connecting Android apps (both Java and AIR) with Java, .NET and PHP backends. Android Java apps can use the APIs for RPC (remote procedure calls) and publish/subscribe messaging. The AIR clients can easily tap into WebORB hosted services, messaging destinations, media streams and data management using the standard APIs available in the Flex/AIR SDKs, including the RTMP integration.

The best way to get an idea of the capabilities WebORB provides for Android is to watch the videos linked below. It is a recording of a webinar we conducted a few weeks ago on the subject of Android and WebORB integration. Additionally, the documentation can be found at: Android and WebORB integration documentation.

Happy WebORB-ing on Android!

Building a Data-Driven Flex and Java Application with WebORB for Java

If you are looking for an alternative to Live Cycle Data Services (LCDS) to do Flex data management, WebORB for Java (Enterprise Edition or Community Edition) is a great alternative. Ken Nelson from San Clemente Technology wrote an excellent tutorial on how to do data management using WebORB, which is posted on the Adobe Developer Connection site. Here is an excerpt from his article:

“In this article I will show you how to build a data driven application in Flex using WebORB for Java. You will learn how to connect WebORB to your database, use WebORB for Java to generate your database access code, and integrate the generated code with your Flex project.”

The complete article with sample code can be viewed here:

http://www.adobe.com/devnet/flex/articles/datadriven-flex-java-applications.html

Tell us what additional tutorial and topics would be of interest to you.

Java Object Access in Google App Engine from Flex/Flash, Silverlight, JavaScript and Android

One of the new features in WebORB for Java v.4.1 is support for Google App Engine integration. With the integration any Java class or Spring bean deployed into a Google App Engine application can be accessed by all the client types supported by WebORB. The list of the supported clients includes: Flex/Flash, Silverlight, JavaScript/AJAX, Android, Windows Phone and in the very near future iOS clients. The clients can invoke methods on the deployed Java services and exchange data using primitive and complex types, arrays, collections, etc. By using WebORB as the client/server integration tier, your application will greatly benefit from the superior performance enabled by the product as well as significantly streamlined application development process.

To learn more about WebORB for Google App Engine, see the WebORB Documentation and/or watch the video below:

WebORB for Java 4.1 Video Overview

A few weeks ago we conducted a webinar where I reviewed most of the new features of WebORB for Java 4.1. Now that the product is released, we’re posting the webinar recording so you can not only watch, but download and play with all the new WebORB goodness yourself. Since the webinar recording is hosted in the Midnight Coders YouTube channel, we have to split it into 15 minutes parts, hence is the breakdown below:

You can also play all videos in a sequence here.

WebORB for Java 4.1 is released

I am very pleased to announce that WebORB for Java 4.1 has been released and is available for download. The release is packed with some very cool features including:

  • Google App Engine integration – WebORB for Java can be deployed as a part of your web application into GAE. The feature includes all of the remoting capabilities for all supported client types (Flex, Flash, Silverlight, JavaScript, native Java and .NET). You can also use the management console for the instances of WebORB running in the Google cloud. Additionally, we introduced new WebORB for the Cloud pricing specifically for the cloud-based deployments.
  • Android integration (native Java and AIR) – The integration between AIR (on Android) and WebORB for Java is fairly straight-forward and has been available ever since Adobe created the AIR package for Android. However, starting with the version 4.1, we added support and APIs for the native Java Android apps. Java apps running on Android can benefit from the remoting and messaging capabilities of WebORB. This includes remote method invocation from Android to all supported service types: POJOs, Spring beans, EJBs, Hibernate models, SOAP Web Services and Grails controllers. The messaging support provides the publish/subscribe API and integration with the WebORB Messaging server. The functionality enables cross-device messaging (homogeneous and heterogeneous OSs), server to client data push, integration with MQ and JMS systems.
  • Windows Phone 7 integration – We are very excited to introduce support for WP7. Currently the supported feature set includes remote method invocation, but we are adding support for data messaging (which includes publish/subscribe, data push, remote shared objects and streaming). WebORB for Java 4.1 also includes a very powerful code generator which can create a C# remoting library as well as a complete WP7 Visual Studio project with sample UI. I should note that WebORB is the only integration server on the market enabling WP7 to Java connectivity.
  • Improved Silverlight support – We have made significant improvements in the Silverlight code generator and the SL to Java runtime. The new code generator creates a complete client class library with complex types, enums, bindable model and a proxy class for the remote Java service. Additionally, it creates Visual Studio and MonoDevelop projects with sample user interface demonstrating the usage of the client class library.
  • Grails integration – WebORB distribution now includes a Grails plugin which brings all of the WebORB functionality for Grails applications. Supported features include client-server remoting for all supported client types Flex, Flash, Silverlight, JavaScript, native Java and .NET), data management, messaging and media streaming.

As with any release, there are various bug fixes and improvements. We invite you to download a copy and give it a try. The Development Mode and the WebORB Community Edition are available free of charge.

10 Things You Cannot Do With BlazeDS

BlazeDS?! What’s that? Ok, ok, we know what it is, but mostly because a ton of people switched over from it to WebORB. What’s interesting is that WebORB for Java does not really compete with BlazeDS, since feature-wise WebORB goes above and beyond and is a direct alternative for Adobe’s LiveCycle Data Services (LCDS). However, we get the question of “how WebORB is different from BlazeDS/LCDS” quite often. A few weeks ago we conducted a webinar where we explored the major differences between the products. Below is a brief summary of the top 10 things you would not be so lucky to have if you use BlazeDS. All of these are discussed in detail in the webinar recording. Also, in case if you are not aware of it, all of these features are available at absolutely no cost with the WebORB Community Edition:

  1. GenericDestination – Flex clients communicate with Java backend through an abstraction called “destination”. With WebORB, you can deploy any supported service type (POJO, jar, Spring bean, EJB, etc)  and start invoking methods on it without any configuration changes whatsoever.  That way you can go from deployment (which is as simple as copying your jar into WEB-INF/lib) to development without any intermediate steps.
  2. Service Browser – WebORB Service Browser is a part of the management console (which is yet another differentiator altogether). The Service Browser provides a unified view for all supported service types where you can explore the contents of the deployed JARs, see the list of POJOs, Spring beans, Web services and EJBs exposed as remoting services. Using the service browser you can set security restrictions and invoke service methods directly from the console.
  3. Code Generation – The service browser described above is also the front-end for a very powerful code generation capability. For any service shown in the service browser, WebORB can generate the client-side code for various client environments and frameworks. For example, with a single click, you can obtain all the ActionScript code formatted for the PureMVC, Cairngorm, Swiz or Mate framework. The generated code includes all the code enabling client/server invocations as well as the ActionScript value object classes corresponding to the server-side VOs. In addition to the ActionScript code, WebORB can produce code in JavaScript and Silverlight outputs.
  4. AJAX RPC – In addition to Flex and Flash clients, WebORB also provides support for remoting invocations using JavaScript/AJAX and JSON clients. All supported server-side service types can be invoked from any JavaScript-enabled application or web page.
  5. Silverlight RPC – WebORB supports remoting invocations from Silverlight clients in the same capacity as with Flex. The product includes a client-side Silverlight assembly which implements serialization and deserialization logic between .NET CLR and Java. The on-the-wire protocol used by Silverlight is AMF over HTTP. As a result, the serialized messages are compact and optimized to ensure fast and efficient data transmission.
  6. Data Management – WebORB data management is a powerful system for building data-driven client-server applications. The system generates both client (ActionScript) and server (Java) code which enables full CRUD for all the tables identified in the data model. The system also includes a framework with very intuitive APIs to load database records into Flex/AIR applications as well as to create, modify or delete data in the database.
  7. Data Paging – The Data Management system also includes support for data paging. The framework can automatically handle loading additional data (for example, when the user scrolls down the view port in a datagrid) into the data-bound UI controls.
  8. Client Synchronization – Client synchronization allows clients operating on the same set of data to be notified when other clients make any kind of change in that data set. For example, a client can load and view records from a table. Another client could either make a change to these records or add a new one. With client synchronization, your client-side application automatically receives an event about a change. WebORB Data Management provides support for these events out of the box.
  9. RTMP Support – WebORB includes RTMP support and offers the following features out of the box: video/audio streaming, video recording, RTMP-based data push, Remote Shared objects, broadcast, video chat, etc.
  10. Messaging Code Generation – Messaging is a very powerful subsystem of the product. Clients from different environments (Flex, AIR, Flash, Silverlight, JavaScript and soon iOS) can use the publish/subscribe system supported by WebORB to exchange messages with the server applications or each other. To simplify the process of creating these types of applications, WebORB includes a code generator for different client types enabling publish/subscribe functionality.

The recording consists of four parts and describes the features I listed above in great detail. Enjoy!

3 More WebORB webinars

We’re kicking off the new year with three great WebORB webinar topics you won’t want to miss:

Tuesday, January 11, 3pm (central)

WebORB for Cloud: Build Universally Accessible & Secure Services with Immediate Scalability

If you are thinking about deploying your web application into Microsoft Azure, Amazon EC2 or Google AppEngine Clouds, register for this webinar for some quick start tips.

Topics Covered:

-How to deploy your premise-based application into the Cloud
-How to create a new project in the Cloud
-How WebORB for Cloud is licensed

Register:  http://bit.ly/hgoWul

*******************************************************************************************

Thursday, January 20, 8pm (central)

Mobile (Flex) Front-End, Cloud Back-end, What’s the Recipe for Success

This is a special presentation for the Denver RIA Developers Group that will show you how to create mobile applications and rapidly deploy them into a fully scalable, revenue earning business in the Cloud using WebORB.

Register:   http://bit.ly/eBlX51

*******************************************************************************************

Thursday, January 27, 11:00am (central)

Data Messaging and Video Streaming for Java Applications

If you are thinking about developing a Java messaging and/or video streaming application which connects to a Flex, Flash, JavaScript or Silverlight client, you’ll get some helpful tips by attending this webinar.  The topics that we’ll cover include:

-Remote Shared Objects
-Video Streaming
-Video Recording
-Data Push
-Data Management

Register:  http://bit.ly/fcgn7T