667481 members! Sign up to stay informed.

Sponsored Links


Resources

Enterprise Java
Research Library

Get Java white papers, product information, case studies and webcasts

News News News Messages: 6 Messages: 6 Messages: 6 Printer friendly Printer friendly Printer friendly Post reply Post reply Post reply XML XML XML

eFace 1.0.0 released: XAML/WPF in Java

Posted by: Yves YANG on October 12, 2007 DIGG
eFace is a XAML/WPF solution in Java. The first release is available for download now : http://www.soyatec.com/eface/installation/.

This release includes an abstract UI library compatible with WPF, a XAML loader and SWT renderer. An XAML editor like XAMLPad is bundled in the package to simplify the developer's life in Eclipse. The entire package can be considered as a XAML platform in Eclipse for RCP Applications.

eFace's main features include:
  • Full support of XAML syntax and semantic
  • Styling and templating
  • Layout system
  • Threading safe
  • Complete data binding mechanism
  • Collection view
  • Rich UI library
Some webdemos are available: http://www.soyatec.com/eface/webdemo.

The Web/Ajax renderer is scheduled by Q1 2008.

Threaded replies

·  eFace 1.0.0 released: XAML/WPF in Java by Yves YANG on Fri Oct 12 07:40:28 EDT 2007
  ·  SWT? by Jin Chun on Fri Oct 12 15:25:32 EDT 2007
    ·  Re: SWT by Yves YANG on Sun Oct 14 06:09:42 EDT 2007
      ·  Re: SWT by Jin Chun on Mon Oct 15 14:55:35 EDT 2007
        ·  Re: SWT by Yves YANG on Tue Oct 16 08:42:24 EDT 2007
  ·  Perfect example.. by Henri Karapuu on Sun Oct 14 04:39:04 EDT 2007
    ·  RE: Perfect example.. by Yves YANG on Sun Oct 14 06:44:23 EDT 2007
  Message #241129 Post reply Post reply Post reply Go to top Go to top Go to top

SWT?

Posted by: Jin Chun on October 12, 2007 in response to Message #241062
I can't imagine a shop inside the enterprise needing to have coverage across WPF and SWT, I would imagine it would go one way or the other. If anything, I would think that it would lean towards Swing or JavaFX, but even then? I know there are SWF converters for XAML (frame by frame) but even then, I would think that any type of conversion would be looking towards a migration instead of interoperability, but then again I could be mistaken.

  Message #241183 Post reply Post reply Post reply Go to top Go to top Go to top

Perfect example..

Posted by: Henri Karapuu on October 14, 2007 in response to Message #241062
eFace is a XAML/WPF solution in Java.


This is a perfect example of the kind of news items that were supposed to be discouraged by "our humble editors" as per discussions couple of weeks ago.

I don't have a glue what these acronyms mean, or what the software does. I can only add one more acronym: WTF.

/Henri Karapuu

  Message #241186 Post reply Post reply Post reply Go to top Go to top Go to top

Re: SWT

Posted by: Yves YANG on October 14, 2007 in response to Message #241129
I see there are two issues in your post:

  1. Interoperability

  2. XAML's Added-values for Java

1. Interoperability between .NET and Java
I can't imagine a shop inside the enterprise needing to have coverage across WPF and SWT, I would imagine it would go one way or the other.

We think all modeling solution providers (UML, BPM, etc.) may have interest in this solution to generate directly executable application. With this solution, one generator can be used for both platforms.

If anything, I would think that it would lean towards Swing or JavaFX, but even then? I know there are SWF converters for XAML (frame by frame) but even then, I would think that any type of conversion would be looking towards a migration instead of interoperability, but then again I could be mistaken.

I think you are talking about the graphical aspect. In fact, GUI consists of several areas: Controls, graphic animation and documentations. Now right, we focus only on "Controls", which is used in general for EAI applications such as CRM, ERP.

2. XAML's Added-values for Java
At present, there is always a question to ask when you start a Java application: which technology to use for GUI? There are two categories: Desktop and Web. For Desktop, you have obviously two choices: SWT and Swing (including JavaFX). For Web application, there are a lot of possibilities: Struts, JSF, Ajax, Flex, GWT etc... You may be lost in this huge list. Once your decision is made, all others factors will be fixed around this technology: the team composition, development tools and the deployment environment . It is very heavy to rollback afterwards. So this decision is critical for the entire life of the application. So what's wrong? The answer is simple: an abstract and generic UI solution is missing in the Java world.

This is our main goal. With eFace, you can start your application in the simplest environment in terms of GUI, for example SWT or Swing. At this stage, you can focus your energies on your domain logic. The decision of the final GUI solution can be made at the deployment time.

  Message #241187 Post reply Post reply Post reply Go to top Go to top Go to top

RE: Perfect example..

Posted by: Yves YANG on October 14, 2007 in response to Message #241183
Hi henri,
This is a perfect example of the kind of news items that were supposed to be discouraged by "our humble editors" as per discussions couple of weeks ago.
Obviously, I have a lot to learn. I don't know why it should be discouraged. I appreciate if you can give some more indications.

Yves YANG

  Message #241240 Post reply Post reply Post reply Go to top Go to top Go to top

Re: SWT

Posted by: Jin Chun on October 15, 2007 in response to Message #241186
Hi Yves. I see your point, however, I personally don't see how practical interoperability is, mostly in terms of uptake. I would think, that even in a shop that is solely dedicated to Java on the backend, that the front end desktop technology would lean more towards either a straight Eclipser RCP solution, or NB Rich Client, or JavaFX, or something else that is Swing based (Spring, etc). If not, then some other platform such as Flex, or WPF directly, either through MS Expression/XBAP or Silverlight. The reason I bring this up is that the front end is usually decided upon and fixed without a need to interop at the level of generic UI specification as in UML or BPM.

As for the value add, I definitely agree, it is missing, however, I still don't find it personally compelling. If I were looking at XAML, I would stick with a WPF based front end. I guess it would be intriguing to be able to do the same code behind techniques as one can in C#, but still, it seems that for the desktop Java space JavaFX is closer to the right tool for the job.

Last point, I guess I would be more enthusiastic about the interop if there was something I'm obviously missing about the compelling need someone would have to be able to define the front end UI in XAML and generate multiple clients off of it.

  Message #241263 Post reply Post reply Post reply Go to top Go to top Go to top

Re: SWT

Posted by: Yves YANG on October 16, 2007 in response to Message #241240
Hi Yves. I see your point, however, I personally don't see how practical interoperability is, mostly in terms of uptake.
The interoperability is a huge subject. It touches several aspects such as programming language, UI presentation, persistence, behavior services, etc. It cannot be resolved in one product. eFace contributes only on UI aspect.
I would think, that even in a shop that is solely dedicated to Java on the backend, that the front end desktop technology would lean more towards either a straight Eclipser RCP solution, or NB Rich Client, or JavaFX, or something else that is Swing based (Spring, etc). If not, then some other platform such as Flex, or WPF directly, either through MS Expression/XBAP or Silverlight. The reason I bring this up is that the front end is usually decided upon and fixed without a need to interop at the level of generic UI specification as in UML or BPM.
We had experienced the same problem several years ago with database. We worked directly with a specific database through SQL. Nowadays, we take in general the generic persistence layer framework such as Hibernate, JPA, JDO and SDO to make the application independent. It is (will be) the same with UI.
As for the value add, I definitely agree, it is missing, however, I still don't find it personally compelling. If I were looking at XAML, I would stick with a WPF based front end. I guess it would be intriguing to be able to do the same code behind techniques as one can in C#,
eFace is Java solution. It implements only the UI abstract library same as WPF, which is necessary for our XAML loader. You develop your application as usual in Java.
but still, it seems that for the desktop Java space JavaFX is closer to the right tool for the job.
From my prospective, JavaFX is a good product for developer. But I wonder how it could be used by UI designers because of the programming language. The integration with visual tools isn't straight forward as XAML, which is one of the key benefits of the separation between UI and business logic.
I guess I would be more enthusiastic about the interop if there was something I'm obviously missing about the compelling need someone would have to be able to define the front end UI in XAML and generate multiple clients off of it.


New content on TheServerSide.comNew content on TheServerSide.comNew content on TheServerSide.com

Dependency Injection in Java EE 6 - Part 1

Reza Rahman explores the features of the proposed JSR 299, Contexts and Dependency Injection for Java EE (CDI). When approved, it promises to be a key feature of Java EE 6. (November 2, Article)

SAML: It's Not just for Web services

SAML is an XML-based standard for exchanging authentication and authorization data between security domains. The single most important problem that SAML was created to solve is the Web browser Single Sign-On problem. Many organizations are debating whether to stay with version 1.1 or move to 2.0. This article makes observations about both options. (September 28, Article)

Programming is Also Teaching Your Team

Joe Ottinger takes a look at how people learn, and applies it to the practice of programming. He notes that understanding how people learn is an essential part of working in a programming team. (September 22, Article)

Can Java EE Deliver The Asynchronous Web?

Stephen Maryka gave us an article about the Asynchronous Web and posed a number of questions that get examined like an approach to delivering Asynchronous Web capabilities through extensions to existing Java EE technologies. (July 14, Article)

JSF Flex

JavaServer Faces Flex goal is to provide users capability in creating standard Flex components, part of flexSDK which is open sourced through MPL license, as normal JSF components. This article by Ji Hoon Kim will provide an overview of creating a simple multilingual JSF page consisting of JSF Flex tags. (June 29, Article)

The Rules of SOA - A Road to a Successful SOA Implementation

In this session Jeff explores the key characteristics of successful SOA projects. He covers some of the patterns, and anti-patterns, tool sets, and strategies that he himself learned the hard way. Last, he provides a strategy and blueprint for achieving a high likelihood of success in your SOA project. (June 23, Tech Talk)

Ari Zilka Talks About Terracotta 3.1

Ari Zilka, CTO of Terracotta, Inc., talks about the new features in Terracotta 3.1, announced during JavaOne and available now. (June 15, Tech Talk)

Enterprise Application Integration, and Spring

In this Tech Talk, Josh Long explores an integration challenge using Spring Integration and walks through the implementation, employing and expanding on the basic patterns of Enterprise Application Integration to tie together components into a function integration solution, and then demonstrates how Spring Integration helps address the integration requirements. (June 15, Tech Talk)

Google Web Toolkit: An Introduction

In this Tech Talk, David Geary teaches you: The basics of Google Web Toolkit; How to implement Ajax-enabled applications in Java; Internationalization; Hooking into the browser history mechanism; Remote procedure calls. (June 4, Tech Talk)

Just Enough Early Architecture to Guide Development

Jon Kern discusses the best architecture/technical solutions and ensure that they are repeated by all developers. By tackling the architecture up-front in a serial manner, subsequent parallel development will be much more manageable and predictable. (May 28, Tech Talk)

Productive Programmer: On the Lam from the Furniture Police

This keynote describes the frustrations of modern knowledge workers in their quest to actually get some work done, and solutions for how to guard yourself against all those distractions. Neal Ford talks about environments, coding, acceleration, automation, and avoiding repetition as ways to defeat the misguided attempts to sap your ability to produce good work. (May 26, Tech Talk)

Auto-Scaling Your Existing Web Application

Gil demonstrates how new, aggressive uses of already abundant compute capacity by common applications offer competitive value for application designers. (May 21, Tech Talk)

Automating Hibernate Mapping and Queries For Java Web Development

Chris Keene introduces WaveMaker as a new way to automate the ability to generate Hibernate classes in order to more quickly bring OR mapping into an application. (May 19, Article)

Auto-Scaling Your Existing Web Application

In this session Nati Shalom demonstrates how to take a standard Java EE web application and scale it out or down dynamically without changes to the application code. Seeing as most web applications are over-provisioned to meet infrequent peak loads, this is a dramatic change because it enables growing your application as needed, when needed, without paying for unutilized resources. (May 19, Tech Talk)

Free Book: Jakarta-Struts Live

Download the entire book of Jakarta-Struts Live and learn about Struts MVC, Tiles, the Validator, DynaActionForms, plug-ins, internationalization, and more.
(Book PDF Download)

Application Server Matrix

The Application Server Matrix is a detailed listing of J2EE vendors and their application server products, with information on latest version numbers, J2EE spec support and licensing, pricing, platform support, and links to product downloads and reviews.
(Application Server Comparison Matrix)

News | Blogs | Discussions | Tech talks | Patterns | Reviews | White Papers | Downloads | Articles | Media kit | About
Java Solutions
All Content Copyright ©2007 TheServerSide Privacy Policy
Site Map