Category Archives: JavaEE

Pai da Linguagem Java deixa a Oracle

Para quem não conhece, o Sr. da foto ao lado é James Gosling, o criador da linguagem Java. Na Sexta, 09/Abr/2010, ele anunciou em seu blog sua saida da Oracle.

No post original ele informa que deixou a empresa no dia 02/Abr/2010 e ainda não iniciou a procura por emprego.

Gosling engrossa a fila dos ex-Sun que deixaram Larry Ellison falando sozinho. Antes dele foi o ex-CEO da Sun, Jonathan Schwartz, e um dos inventores do XML, Tim Bray, que foi para a Google.

Quem será o próximo? Façam suas apostas!

(fonte: NYTimes.com)

Category: JavaEE, news, Oracle

A complexidade de Java e o comprimento da roupa das mulheres

Em 1926, George Taylor, um economista americano,  formulou a teoria do “Hemline Index“. A teoria correlaciona o comprimento dos vestidos da mulheres com a saúde da economia: quanto mais curto o vestido/saia, mais forte a economia.

Nos anos 40-50 a moda eram saias longas, até o tornozelo. A exuberância dos anos 60 veio com os mini-vestidos e o surgimento das mini-saias. A recessão e a crise do petróleo nos anos 70 aumentou o comprimento da roupa feminina, que diminui novamente no início dos anos 80. Na recessão que iniciou em 1987, fez com que a moda das longas saias e vestidos aumentasse novamente, até serem reduzidas novamente nos anos 90. No mínimo é uma estranha coincidência, certo?

Esta teoria foi validada e revista por Terry Pettijohn, um professor de psicologia na universidade da Carolina (EUA) e por vários outros pesquisadores e institutos de pesquisa de comportamento de consumo. Um resumo muito interessante está resumido neste artigo do jornal New York Times, de agosto de 2008. Desmond Morris utilizou esta teoria como base do seu livro “The Naked Ape“.

Nosso comportamento muda muito de acordo com a situação econômica. Isto já é um fato comprovado. A venda ou não de alguns itens só pode ser explicado por estes “up” e “down” da economia.

O que isto tem a ver com java?

Rod Johnson é um dos líderes da comunidade Java e Java EE. Ele é autor de livros importantes como “Expert One-on-One J2EE Design and Development (2002)“, “J2EE without EJB (Julho 2004, com Juergen Hoeller)“, “Professional Java Development with the Spring Framework (Julho, 2005)”.

Mais um detalhe. Ele é o idealizador do Spring Framework, indiscutivelmente, um dos melhores frameworks Java.

economyJavaEEcomplexity Foi ele quem apresentou um o gráfico ao lado que, utilizando o “Hemline Index“, expõe seu ponto de vista na tentativa de explicar, porque a plataforma Java tornou-se tão complexa.

Veja como temos uma tendência a complicar as coisa – como o comprimento longo das saias femininas -, quando a economia vai mau. E a complexidade diminui nas crises, como esta de 2008/2009.

Ele apresentou suas idéias durante o evento QCon, London 2009. É uma palestra de  pouco mais de 1 hora onde ele explica, com exemplos, alguns motivos que inseriram complexidade na plataforma Java.

Uma das razões é a abordagem de decisão por comitês, utilizado na JCP, que precisa “dar a benção” em toda mudança na linguagem.

Antes de mais nada, eu concordo com o ponto de vista colocado na apresentação. Não leve em conta minha opinião, ou mesmo do autor da apresentação: veja os fatos, os argumentos e tire suas próprias conclusões.

Meus R$ 0,10 na discussão. Como tudo na vida, a decisão por comitês (innovation by committee) é um processo de “trade-off“: ao controlar e burocratizar todo o processo de mudança, eu estou permutando estabilidade por uma menor inovação. É assim com as decisões do JCP e de todo comitê que você criar na sua empresa para controlar mudança.

Veja que isto não é necessariamente ruim. O ponto da discussão não é este. Existem épocas em que as saias são longas e em outros elas são curtas. Mas, tudo tem seu preço. No caso da plataforma Java, o preço foi o incremento de uma complexidade desnecessária.

Você quer saber algumas das razões?

Assisti a palestra do Rod Johnson e fiz um resumo. Se você se interessa pelo assunto, assista a palestra (1h 3min) ou leia meu resumo a seguir.

Que lições podemos tirar dos últimos 10 anos de desenvolvimento da linguagem Java?

Foi assim que R. Johnson iniciou sua palestra. Vou resumi-la em forma de bullets para simplificar a leitura.

Que lições podemos tirar dos erros no desenvolvimento da plataforma Java nos últimos 10 anos?

Dois fatores se destacam:

- O poder que os desenvolvedores tiveram com Java
- Flutuações na economia
- Java iniciou como uma linguagem fácil (ao contrário do que muitos acham), era como “C++–”. Mesmo hoje ainda é simples.
- O DNA de Java é a simplicidade
- O problema não é a linguagem em si. A complexidade foi introduzida ao longo do caminho

Um dos erros foi trazer o “Enterprise” para a linguagem. À esta palavras, em qualquer abordagem, está associada a complexidade. Quem se lembra das “Entity Beans”?

- A complexidade da indústria. Grandes companhias, como IBM, terem “abraçado” Java também tem pontos negativos. “É simplesmente impossível IBM adotar uma tecnologia e não complica-la”, de acordo com R. Johnson
- Abordagem “No pain no gain” (convenhamos, isto é uma falácia)
- Era legal ser complexo. Como desenvolvedor sou diferenciado (isto valeu no início)

Como J2EE evolui para Java EE

- Nos anos 90 Java começou a migrar para o servidor.
nota do autor do blog: Você já programou um “Applet”? Eu já! E utilizava o Notepad! (como sofremos…)
-Não existia muita “regulamentação” para a linguagem (nem havia muitas razões para)
-Ambiente de muita competição: ToLink, Apple WebObjects etc

O Bom e o Ruim

- Muita inovação, muitas opções (bom)
- Mercado de “server-side” era muito fragmentado (bom)
- Risco de ficar “preso” a um fornecedor (ruim)
- Muitas soluções caras (preço da inovação, ruim)

1999 – 2003

- Especificações começam: JCP
- Non-standard não podiam competir com uma plataforma J2EE padronizada:
- ORM versus EJB entity beans
- Velocity versus JSP
- WebObjects versus web tier

1999 – 2003: Bom e Ruim

- Cria-se um grande mercado
- Fornecedores com opções fechadas diminuiram, mas não foram eliminados
- Controle (JCP) estrangula a Inovação
- Idéia de que todos os business objects (EJB) deveriam ser distribuídos
- 2003: início de aplicações Java “leves” (lighter-weight solutions). Exemplo: a adoção em massa do Tomcat
- Os projetos open-source ajudaram a definir o futuro da plataforma e trouxeram inovação: Eclipse, Spring, AspectJ

As “armadilhas” ou Ideas que trouxeram complexidade no J2EE

- Design by committee: tudo precisava ser padronizado. JCP fala de forma privada; composto de grandes fornecedores de software
- Ferramentas que traziam excessiva complexidade
- Não abertura para outras plataformas, a abordagem “Java puro sangue”
- “Desenvolvedores são estúpidos e devem ser controlados”
- “Soluções complexas são melhores”
- “Eu preciso de uma solução que habilite minha arquitetura corporativa”

Os comitês queriam padronizar tudo em Java. Uma verdadeira obsessão do JCP. Citando, Jim Waldo, um engenheiro da Sun:

Reverenciando tudo de bom que os padrões nos trazem, eu acredito que, de certa forma, trazem um grande dano para nossa indústria e a ciência. Ele transforma discussões técnicas em debates políticos. Isto gerou um problema de entendimento do verdadeiro significado dos padrões. Pior de tudo, nos levou a fazer escolha tecnológicas absurdas, que nunca haviam sido implementadas e que não eram a escolha adequada para os problemas que tínhamos em nossas mãos

Exemplos do que foi dito acima:
- CORBA (1990s)
- CMP entity beans
- Muitos ignoraram o sucesso do “TopLink”

O bom exemplo do Linux

Linux é um exemplo de inovação que não fica restrita aos processos de padronização, que são restritos ao Kernel. Na minha opinião, se o processo de desenvolvimento do Linux fosse semelhante ao do Java não teríamos uma distribuição como o Ubuntu.

Qual deveria ser o papel do JCP?

Criar um “mercado” onde as inovações podem ser desenvolvidas a partir dos padrões. Inovação a partir de comitês (innovation by committee), historicamente, produzem resultados medíocres.

Por que a complexidade é “boa”?

- Temos uma tendência natural de achar que “sem dor não haverá ganhos”, ou o adágio “no pain no gain
- Síndrome da “Nova Roupa do Imperador”, ou seja, “não entendi muito bem, é muito complexo, então deve ser bom!”

“É a economia, estúpido!”

[nota do autor do blog: você já leram várias vezes esta frase aqui. E ela é citada por Rod Johnson como um dos motivos de mudanças no horizonte da complexidade. Veja o post sobre a versão 6 da plataforma Java]

- Em um cenário de pós-recessão temos que repensar os investimentos. Economia, economia.
- “Hemline Index”
Economista americano, George Taylor (1926). Relacionou a “exuberância irracional” de nossas ações (pessoas e empresas), com a exuberância da economia.

Inovações da comunidade que fizeram diferença

- Spring
- Hibernate
- Ruby on Rails
- Django
- Grails

Da comunidade open-source para simplificar a vida dos desenvolvedores!

Previsões

- Não teremos um retrocesso para um sistema com complexidade desnecessária
- Portfolio complexos não tem mais espaço. Foco na agilidade, simplicidade. Economia, economia.
- Processo Ágeis vieram para ficar
- Desenvolvedores ainda terão, e precisarão ter mais poder e mais responsabilidades
- Ainda é necessário termos uma plataforma Java que permita uma maior produtividade
- Tradicionais aplicações residentes no servidor cairão em desuso

Resumo

- A pessoa-chave para as mudança é o desenvolvedor
[nota do autor do blog: o desenvolvedor, o arquiteto tem que exercitar o Pensamento Crítico e não aceitar a complexidade simplesmente porque algum comitê, mesmo que seja o JCP, assim o definiu]
- Veja as alternativas, simplifique, estude e tire suas próprias conclusões. Não utilize uma solução porque alguém decidiu que esta é “a” solução

Category: Architecture, JavaEE, lightweight | Tags:

Com vocês, Java EE 6… …e a Oracle? (silêncio)

javalogoV6 Com a aprovação da especificação Java EE na semana passada, a Sun acaba de anunciar a liberação da versão 6 da sua plataforma Java. É o resultado de um trabalho de 3 anos, com forte apelo na redução do volume de código a ser escrito, além de um conjunto de novas funcionalidades  já iniciadas na versão anterior.

RESTful Web services, dependency injection (JSR-330) e annotations para Servlets são algumas das novas funcionalidades que irão facilitar a vida dos milhões de desenvolvedores Java no mundo (embora alguns não concordem, menos código = mais qualidade de vida).

No artigo que apresenta uma introdução à versão 6, Ed Ort lista os principais objetivos desta nova versão:

More Flexible Technology Stack. Over time, the Java EE platform has gotten big, in some cases too big for certain types of applications. To remedy this, Java EE 6 introduces the concept of profiles, configurations of the Java EE platform that are designed for specific classes of applications. A profile may include a subset of Java EE platform technologies, additional technologies that have gone through the Java Community Process, but are not part of the Java EE platform, or both. Java EE 6 introduces the first of these profiles, the Web Profile, a subset of the Java EE platform designed for web application development. The Web Profile includes only those technologies needed by most web application developers, and does not include the enterprise technologies that these developers typically don’t need.
In addition, the Java EE 6 platform has identified a number of technologies as candidates for pruning. These candidates include technologies that have been superseded by newer technologies or technologies that are not widely deployed. Pruning a technology means that it can become an optional component in the next release of the platform rather than a required component.
More extensibility points and service provider interfaces as well as web tier features such as support for self-registration makes the platform highly extensible.
Enhanced Extensibility. Over time, new technologies become available that are of interest to web or enterprise application developers. Rather than adding these technologies to the platform — and growing the platform without bounds — Java EE 6 includes more extensibility points and more service provider interfaces than ever before. This allows you to plug in technologies — even frameworks — in your Java EE 6 implementations in a standard way. Once plugged in, these technologies are just as easy to use as the facilities that are built into the Java EE 6 platform.
Particular emphasis on extensibility has been placed on the web tier. Web application developers often use third-party frameworks in their applications. However, registering these frameworks so that they can be used in Java EE web applications can be complicated, often requiring developers to add to or edit large and complex XML deployment descriptor files. Java EE 6 enables these frameworks to self-register, making it easy to incorporate and configure them in an application.
Usability improvements in many areas of the platform makes it even easier to develop web and enterprise applications.
Further Ease of Development. Java EE 5 made it significantly easier to develop web and enterprise applications. For instance, Java EE 5 introduced a simpler enterprise application programming model based on Plain Old Java Objects (POJOs) and annotations, and eliminated the need for XML deployment descriptors. In addition, Enterprise JavaBeans (EJB) technology was streamlined, requiring fewer classes and interfaces and offering a simpler approach to object-relational mapping by taking advantage of the Java Persistence API (informally referred to as JPA).

- Uma “Stack” com mais flexibilidade: em português claro, ele diz o que já sabíamos. Java EE ficou pesada, com uma complexidade desnecessária para algumas aplicações. Foi necessário então flexibilizar um pouco a plataforma e a Sun (JCP) decidiu introduzir o conceito de “profiles“. “Profiles” definem um conjunto de funcionalidades mínimas, na imensidão que se tornou Java EE, e liberam este conjunto para aplicações mais específicas. O primeiro “profile” liberado foi o “Web Profile“. Outros virão… …Vale lembrar que isto já foi tentado com o J2ME e não tiveram muito sucesso. Desta vez eu acho que vão acertar.

- Enhanced Extensibility. Com muito atraso, na minha opinião, a Sun percebeu a importância das extensões que enriquecem e trazem inovação à sua plataforma de desenvolvimento. O contexto muito fechado do JCP, por um lado mantém um padrão na linguagem e funcionalidades mas, em um trade-off inevitável, não permite que muitas inovações enriqueçam a plataforma. De acordo com Ed Ort Java EE 6 inclui mais “pontos de extensibilidade” de forma a acomodar mais facilmente outros frameworks. É ver para crer.

- Facilidade no processo de desenvolvimento. Já citado acima. O Java EE 5 já tinha feito muitos progressos na tentativa de facilitar a vida do desenvolvedor. Alguns exemplos são as annotations e simplificação no desenvolvimento de Enterprise JavaBeans (EJB), com um menor número de classes e interfaces. Particularmente isto trouxe muitos benefícios na utilização da Java Persistence API (JPA). Além da padronização das annotations para dependency injection, o processo de deployment também foi muito simplificado. Você pode adicionar um enterprise bean diretamente em um WAR, sem precisar empacota-lo em um JAR, e este em um EAR. Demorou!

Não quero fazer uma análise da nova versão do Java EE. Recomendo a leitura deste artigo da InfoQ e uma análise detalhada do ServerSide.com.

E a Oracle?

Como sempre, eu estou convicto que as questões técnicas são importantes, mas o contexto, às vezes faz toda diferença. A pergunta de US$ 7,4 bilhões (valor pago pela Oracle pelo controle da Sun), é: “E a Oracle nisto tudo? Qual será o impacto da aquisição no processo de desenvolvimento do Java?”.

Particularmente, não vejo como a compra pela Oracle possa atrapalhar alguma coisa nos planos da Sun. Java é uma plataforma consolidade e a Oracle, agora mais do que ninguém, quer que a linguagem se consolide mais ainda. A abordagem que parece que está sendo adotada, na minha modesta opinião está corretíssima: “Vamos simplificar!

By the way, lembrem-se que a União Européia continua embargando a fusão. E ela (Oracle) resolveu apelar para seus clientes europeus:

- (Safra Catz, presidente da Oracle) “Ericsson, Vodafone, banco BBVA, vocês podem ir comigo na audiência da comissão européia e me ajudar a convencer aqueles senhores que a compra da Sun é importante e não representa perigo para o mercado”

- (Ericsson, Vodafone, BBVA e mais 5 grandes clientes europeus) “Claro Mrs. Catz, iremos com prazer. Pode contar conosco!”

A coisa está complicada e a Oracle vai precisar de toda ajuda possível. Até o representante do departamento de justiça dos EUA acompanhou a presidente da gigante americana, ajudando-a na defesa. Mais detalhes em “Preocupação no Iate do CEO da Oracle“.

É melhor que a S. Catz traga uma boa notícia para o Sr. Lawrence J. Ellison. Ele, como todo mortal, merece um final de semana tranquilo no seu iate.

Mesmo sem um barco daqueles, bom final de semana a todos!

Davi


Category: JavaEE, Oracle, SUN | Tags:

Larry Ellison (Oracle) falando sobre… …Java!?

Depois da recente aquisição da Sun, Mr. Ellison (bem a seu jeito) já partiu para a ofensiva e fez o seu show na conferência JavaOne 2009.

O chefão da Oracle foi pessoalmente afirmar o compromisso da sua empresa na continuidade do Java e JavaFX (detalhes abaixo).

Jeremy Chone (SYS-Con.com) fez esta excelente cobertura, resumindo o compromentimento da Oracle com a plataforma criada pela SUN. Resumindo:

JavaFX não é Java. Originalmente sabemos que JavaFX era para ser uma linguagem de script (como Groovy) mas, talvez por questões relacionadas a performance, virou uma linguagem compilada.

- Google Android não é um dispositivo baseado em Java. Uma observação importante. O Google Android é baseado em Linux. O SDK do Android “cross compila” o código Java para seu bytecode nativo. O desenvolvedor cria a aplicação em Java, mas a mesma não é executada em uma JVM no Android.

- Como ainda não temos uma JVM para o Android, e JavaFX precisa de uma JVM, como fazer para executar no sistema operacional do Google uma aplicação baseada nesta linguagem (JavaFX)? Discussão interessante, porém sem solução até o momento. Em tempo, no evento acima havia uma demo de uma app. JavaFX executando em uma Android… …tenhamos fé! Veja o vídeo abaixo!

- Por mais que não goste também, parece que o reinado de Java entre os dispositivos móveis já não é tão grande. Vamos lá: iPhone, o novo Palm Pre, Android etc. Segundo o autor do post original, tudo poderia mudar se Larry Ellison convencesse Steven Jobs a incluir Java nos seus iPhones. Convenhamos, seria perfeito… …sonhar não custa nada.

Category: Apple, JavaEE, Oracle

JBoss 5 Disponível!

Já contabilizado em milhares de downloads está disponível em GA (General Availability), a versão 5 do JBoss Application Server.

De acordo com o blog “The Aquarium” (Sun), este release já é compatível com JSR 244 (Java EE 5).

Abaixo está a tabela de compatibilidade (parcial):

Category: JavaEE

Mundo Java e SOA

 

Revista Mundo Java Nov2008

Revista Mundo Java Nov2008

A revista Mundo Java de Nov/2008 (ed.32) traz, como sempre, excelentes artigos sobre a plataforma Java e SOA.

Alguns destaques desta edição:

  • SOA – Arquitetura Orientada a Serviços em uma perspectiva Open Source
  • Como SOA vem Influenciando as aplicações Java Corporativas
  • “SOA na prática: USando EAI Patterns no JBoss ESB” (leitura mais do que recomendada)

Infelizmente os artigos ainda não estão disponíveis no site mas, se você ainda não conhece a revista, vale a pena a leitura desta edição.

Por fim, mas não menos importante, se você é programador Java e trabalha com sistemas de tempo real (real time), leia a coluna do Cezar Taurion (pag.74) que, este mês, escreve sobre “Java em Tempo Real: Java como uma das principais linguagens para aplicações em tempo real“.

Category: JavaEE, magazine

NetBeans 6.5 Disponível para Download

Como já informado anteriormente neste blog a versão 6.5 do NetBeans IDE está disponível para download.

O resumo das funcionalidades deste excelente IDE está na figura abaixo (link: http://www.netbeans.org/features/index.html)

Category: JavaEE, open-source, PHP, SUN, Tools

NetBeans 6.5 está no forno!

Confesso que fiquei muito impressionado com esta versão do NetBeans (v. 6.5). De acordo com esta notícia do blog da SUN, o release candidate (RC) já está disponível para download.

    Acredite, se você é um programador Java, PHP, C/C++, Ruby, Groovy, vale a pena verificar as funcionalidades desta nova versão do IDE da SUN.

    Como todo RC, você sabe que é uma versão que pode apresentar instabilidade.

    Novas funcionalidades se você utiliza:

    São várias outras inovações que tem por objetivo disponibilizar uma IDE para editar desde um arquivo CSS até projetos gráficos em Java. No dia 20/Nov/08 a versão definitiva deverá ser liberada.

    Category: JavaEE, SUN

    Java é o novo COBOL?

    Claro que o título é provocativo. Antes de mais nada deixo claro que já fui programador Java (desde as primeiras versões) e sou um defensor da linguagem. Penso porém que vale a pena um pouco de reflexão sobre o futuro desta plataforma.

    Sempre argumento com o time de arquitetura da empresa onde trabalho sobre as opções que temos de desenvolvimento ágil. Utilizamos Java em nossos projetos mas sempre tento provocar uma discussão no sentido de avaliarmos as alternativas de linguagens mais “leves” (lightweight frameworks).

    Ruby, PHP, JRuby (Java + Ruby, óbvio não?), são opções que devemos sempre considerar partindo da premissa que nenhuma linguagem/plataforma pode solucionar todos os problemas. O mais importante é termos o “fecho” da arquitetura e garantir a interoperabilidade entre os aplicativos. No nosso caso, com a nova arquitetura SOA implantada e a utilização de Web Services, isto fica muito mais fácil.

    Bom, voltando ao Java. Esta discussão de que o Java não é mais o mesmo vem e volta sempre. É difícil argumentar quando sabemos que existem mais de 5 milhões de desenvolvedores Java atualmente. Por outro lado, mais e mais “cool kids” estão escolhendo alternativa a Java para implementar seus web sites. É o que argumenta Coach Wei neste artigo no JDJ.

    Ele questiona se seria a falta de frameworks? Certamente não. Como ele mesmo cita, “I bet there are more Java frameworks than the population in China”. A questão é que muitos web sites são simples, sem muita complexidade; e isto talvez seja uma tendência. Neste ponto, scripts e lógicas lightweight no lado do servidor, que é a “praia” do PHP e Ruby/JRuby etc.

    O que está faltando no mundo Java?

    Ele aponta três alternativas:

    1. JSP/Servlet com um Java Servlet engine (or mesmo um application server): Esta é a arquitetura predominante para aplicações Web-based nas corporações. Mas não tem nenhuma vantagem na contrução de web sites quando comprados com PHP ou Ruby;

    2. JavaServer Faces: JSF é “the new kid on the block”. Vai facilitar a construção de sites? Provavelmente não! JSF foi desenvolvido para simplificar a contrução de aplicações form-based.

    3. Utilização de um Java based content management system (CMS)? Segundo o autor, nenhum Java-base CMS tem o apelo e inovação suficiente para ser um “killer”.

    A propósito, o título do post vem deste outro artigo: “Java, the Cobol of the 90′s?“, escrito por Quinton Wall (BEA).

    Category: JavaEE, lightweight

    JAVA EE 5, SOA, the bad, the good… (Part 2)

    +
    This is the Part 2 This Special Report from WebServices.com about JavaEE 5 and Enterprise SOA.

    1. The Bad (by Bruce Snyder, co-founder and developer for the Geronimo project and a senior architect at LogicBlaze Inc., an open source SOA provider)

    Snyder said enterprise-grade SOA should have flexibility on the back end as well as on the developer side, and by that he means making it easier to do things. “There’s a portion of Java EE trying to standardize on that,” he said, such as the move toward annotations with the JAX-WS spec. It’s good in terms of standardization, but in terms of flexibility and simplifying things, I’m not sure Java EE 5 does that. I still see people going outside of Java EE to look for solutions.”

    2. The Good (by Michael Bechauf, vice president of industry standards at SAP AG)

    All this said, organizations have to be asking themselves, just how much work is involved in taking existing enterprise apps and componentizing/service-enabling them? And does Java EE 5 make it easier?

    “Java EE 5 as a technology platform has made it dramatically easier to service-enable an existing Java application,” said SAP’s Bechauf. “For example, Java annotations can easily service-enable a Java method. Tools also may help a great deal with the service-enabling. If you wanted to do this with a bare-bones IDE and had to write all of the code yourself using Web service APIs, it could be a fair amount of work. If you were to use a tool which helped automate this process, it would be much easier.

    3. A sensate opinion (from J.Bloomberg, ZapThink.com)

    Vendors that are part of the EE 5 ecosystem like SAP and JBoss are offering broader capabilities than just Java EE 5, said Jason Bloomberg, a senior analyst with ZapThink LLC. “You still need scalable, transactional Web sites, and if you want [IBM] WebSphere or [BEA] WebLogic that makes sense, but if you’re looking to do SOA you’re not going to focus on the same priority. It’s what BEA is struggling with as it moved to SOA 360 º, for example. [Vendors] are rethinking what it means to provide a SOA platform.”

    4. A word from Bill Roth, Vice-President of BEA

    While Roth said the company is not looking to distance itself from the Java platform, “are we saying things other than J2EE? Yes, for example an ESB is a useful way to think. There’s no J in SOA, it opens up whole new world for us. The SOA world is not necessarily Java. Is Java the most productive platform for creating building blocks in SOA? Of course. Is it the best way to build everything? No.

    Roth said he views building composite applications and Java EE 5 as orthogonal. “There are new technologies like Service Component Architecture, which describe how larger services are woven together and BPM [business process management], which talks about how services talk to each other. Java EE 5 [is about] how to build better services, but the process of weaving them together as an SOA is at a much larger level and might not involve Java.”

    5. And finally, the Importance of Service Component Architecture (SCA), by Richard Monson-Haefel, a senior analyst at Burton Group Inc.

    Monson-Haefel said the Service Component Architecture (SCA) initiative “is supported by all the big players in EE space and SCA has little or nothing to do with EE.”

    SCA supports service implementations written using a variety of programming languages, including object-oriented languages, as well as Java, PHP, C++, and Cobol; XML-centric languages such as BPEL and XSLT; and declarative languages such as SQL and XQuery.

    The fact that SCA is implemented on top of Java EE, but “doesn’t reference Java EE specifically,” is telling, Monson-Haefel said. “I don’t have a lot of confidence that SCA will go anywhere, but all the vendors [involved] is indicative they’re hedging their bets.

    Category: JavaEE, SOA