Skip to main content

Inside the Java Store: Q & A

Posted by editor on June 22, 2009 at 7:53 AM PDT

Josh Marinacci has been secretly working on a project that became one of the major announcements at this year's JavaOne: the Java Store. Last week he published The Java Store, a Q&A, as a supplement to the Java Warehouse FAQ. Regarding the Java Store, Josh notes:

I'm especially proud of it because I've been secretly working on the project for the past few months. Since the announcement I've gotten a lot of questions on the store and how it relates to the rest of the Java ecosystem.

First of all, Josh succinctly addresses the basic question that anyone who hasn't followed the story closely may have:

What's the one paragraph summary of what you've announced?

We have announced the private beta of the Java Store, a desktop client to let people browse and purchase desktop Java applications, and the open beta of the Java warehouse where developers can submit their apps for distribution. You can sign up to test out the store and warehouse today. Currently US only for both the store and the warehouse, with more countries coming soon.

Josh goes on to pose and answer questions such as "Can I make apps for the Java Store in languages other than JavaFX?" (Answer: yes); "When will you let me sell my apps?" (Answer: "As soon as we can. The store isn't open yet."); and "What about mobile apps and TV?" (Answer: "In the future there will be additional storefronts for TV and mobile").

Josh also responds to a question that has been on the minds of a great many developers since rumors of the Java Store began to circulate:

How will customers find my apps?

The desktop client you saw at JavaOne is only the first version. We are already hard at work adding new features to the store that will let customers find your apps. Features like searching, filtering, ratings and reviews. And eventually the Java Store will be distributed with Java itself, ensuring your apps can be found by nearly a billion people.

The last sentence is actually the key behind the entire Java Store strategy, in my view. Installing applications from the web is becoming increasingly common today -- to the extent that many users of such applications (e.g., games, etc.) don't necessarily realize they're actually installing something on their computer or mobile device. All they know is that there's an icon and when they click it they get to do what they want to do. Clearly, I'm talking about people who are not software engineering professionals here...

So, let's look at the Java Update process. When a "Java Update" bubble appears on my wife's screen, she knows that it's safe to let it perform its install (from the experience of me telling her it's safe, so long as it looks like the same "Java Update" bubble she's often seen before -- note that she doesn't just click "OK" for most such bubbles that pop up on her screen, and knows specifically to click "Cancel" or "No" for some of them). The future Java Update bubble will look at not only which Java is installed on the computer or device, but it will also look at the versions of Java Store applications you've installed, and tell you if there is a new version available. Meanwhile, the Java Store application itself may have capabilities to inform you about applications you might find interesting. Or, developers in the community might produce applications that performs these kinds of analysis, facilitating finding interesting and relevant Java Store applications, and distribute it using the Java Store.

The concept of the Java Store isn't astonishingly new, if you look at it simply as an elaborate software update system (akin to Windows Update). What's different about the Java Store, though, is that it is really a non-intrusive community platform for distributing applications that run in a JVM, supplemented with tools that let the user community talk about, rate, and find new applications. That's very different from Windows Update, which is really a corporate sales tool ("Hey, user! It's time to pony up some cash and upgrade to the latest Microsoft software release, don't you think?"). In this sense, in its style and approach, the Java Store is really a Web 2.0 platform centered on software applications. I like that!


In Java Today, Joshua Marinacci writes about a project he's been secretly working on, in The Java Store, a Q&A: "One of the big announcements at JavaOne was the Java Store. I'm especially proud of it because I've been secretly working on the project for the past few months. Since the announcement I've gotten a lot of questions on the store and how it relates to the rest of the Java ecosystem. To supplement the excellent FAQ I thought I'd answer a few questions..."

Marina Sum reports that OpenDS 2.0.0 Release Candidate 2 Ships: "OpenDS community manager and architect Ludo Poitou has announced the release of OpenDS 2.0.0 Release Candidate 2. Besides bug fixes, the release includes many new capabilities, including enhanced multimaster replication and recurring tasks. OpenDS 2.0 will follow shortly after the testing of RC 2 is complete..."

AND Jean-Francois Arcand reports Atmosphere 0.2 GA now available: "Finally, Atmosphere 0.2 released with support for annotations for REST application, improved support for Tomcat/Jetty/GlassFish, native support for JBossWeb 2.1.x, and EJB/External components broadcast lookup available." You can also see the official announcement.


In today's Weblogs, Alexey Ushakov posts his JWebPane BOF screenshots at JavaOne (2009): "Screenshots of the demos shown at BOF-3992 session presented at Thursday, June 4... Here is screenshot of the demo that was shown at this JavaOne... More advanced usage of JWebPane. Here we have fully functional web based widget representing Microsoft maps... "

Fabrizio Giudici is working on First enhancements on BetterBeansBinding: "After the May pause, I've resumed working on BBB. As anticipated, the focus now is on test coverage, but I've also started working on some enhancements / bugs submitted by people. For instance, BETTERBEANSBINDING-32, "JTableBinding.ColumnBinding: cell renderer/editor" is about adding..."

And John O'Conner has news for developers who are Learning JavaFX?: "Long ago, I started a series called JavaFX Learning Curve Journal. Those articles/journals were on java.sun.com at the very beginning of the JavaFX project. I recently tried to find some of those articles, and I think they've been removed or..."


In the Forums, chrjohn asks When do I need Multicast, HADB, in-memory-replication on a cluster?: "Hi, for a project we want to use the clustering capability of Glassfish V2.1. There are some questions which arose, maybe someone can answer them or point me in the right direction. 1. The project does not have any HTTP sessions or SFSBs. So I guess I do not need the state replication via HADB or in-memory-replication? All I want is that the SLSBs and MDBs are highly available in the cluster, i.e. if one server fails then the beans from the other server are taking over. 2. I do not want JMS messages to get lost. I guess the broker can store the messages also in another data base. Or is HADB recommended for this? 3. Regarding multicasting: is this only used for the session replication feature? ..."

jtalbut has a problem where an EJB web service from WSDL doesn't work with external XSD: "Hi, I have a WSDL file that imports an XSD file (both attached, they originate from the book "SOA in Practice" but I've extracted the schema myself). In Netbeans I have an EJB Module project, and I use the "Web Service from WSDL" feature to create an EJB based on this WSDL file - the only change I make is to turn off the wrapped style and to write a trivial body to the function. When the web service is called all of the fields (in this example there is only one, I've got a bigger WSDL with more) in the GetCustomerAddress object are null. Before I extracted the XSD into a separate file the web service worked correctly..."

And Linda Schneider responds to questions Re: Delivery of JMS message in case of distributed transaction: "Conceptually I understand your problem is caused because the JMS update is faster than the database update, but I don't know of anyone in the real world who is having a similar issue. Actually, I'm not 100% sure why you are ever seeing this issue .. Are you *always* performing the database operation first ??? (you have to if you want to guarantee the right behavior). Are you running in a transaction ??? (not required, although it may help to pinpoint an issue). Here is my confusion .... I can see two possible ways to do this ..."


The current Spotlight is the final installment of Janice J. Heiss's "Developer Insight Series" Part 4: Favorite and Funny Code: "Over the years I've heard noted developers talk about their favorite code, funniest code, most beautiful code, how to write code, how not to write code, the obstacles to writing good code, what they love and hate about writing code, and so on. In the process, I've encountered a lot of insight that is worth preserving--and heard some funny stories... In the fourth and final part of the series, three developers share their funniest and most favorite code, and tell funny stories..."


This week's java.net Poll asks Which project and community (P/C) content would you like to see more of on java.net?. The poll will be open through Thursday.


Our Feature Articles include Thomas Kuenneth's, Hacking JavaFX Binding, which describes how to apply binding within JavaFX in a manner similar to what can be accomplished using Beans Binding (JSR-295). We're also featuring Gary Benson's Zero and Shark: a Zero-Assembly Port of OpenJDK, which tells the interesting story of how the Java group at Red Hat developed a cross-platform OpenJDK port.


The latest Java Mobility Podcast is Java Mobility Podcast 81: JTDF, in which Eric Areseneau talks about Victor D'yakov talks about the new Java Device Testing Framework project in the Mobile & Embedded Community.

The latest OpenJDK Podcast is

The latest JavaOne Community Corner Podcast is


-->


Current and upcoming Java
Events
:

Registered users can submit event listings for the href="http://www.java.net/events">java.net Events Page using our href="http://today.java.net/cs/user/create/e">events submission form.
All submissions go through an editorial review before being posted to the
site.


Archives and Subscriptions: This blog is delivered weekdays as
the Java
Today RSS feed
. Also, once this page is no longer featured as the
front page of java.net it will be
archived along with other past issues in the href="http://today.java.net/today/archive/">java.net Archive.

Josh Marinacci has been secretly working on a project that became one of the big announcements at this year's JavaOne: the Java Store...