quinta-feira, 9 de outubro de 2014

Google quer que justiça dos EUA interceda na disputa contra Oracle

SAN FRANCISCO (Reuters) - O Google pediu que a Suprema Corte dos Estados Unidos interceda no litígio contencioso contra a Oracle, argumentando que a corte precisa agir para proteger a inovação na alta tecnologia.

O pedido do Google, feito na segunda-feira, pretende reverter uma decisão de uma corte de apelação segundo a qual a Oracle pode exigir copyright de partes da linguagem de programação Java, usada pelo Google para desenhar seu sistema operacional para smartphones, o Android.

Representantes da Oracle e do Google não responderam imediatamente a pedidos de comentários.

O Android é a plataforma de smartphones mais vendida no mundo. A Oracle processou o Google em 2010, alegando que a empresa incorporou indevidamente partes da linguagem Java no Android. A Oracle busca indenizações de 1 bilhão de dólares alegando direitos autorais.

O caso analisa se linguagens computacionais que conectam programas -- conhecidas como interface entre aplicativo e programação, ou APIs, na sigla em inglês -- podem ser alvo de copyrights.

Um juiz federal de San Francisco decidiu que a Oracle não poderia pedir direitos autorais por partes da Java, mas anteriormente neste ano a Corte de Apelações do Circuito de Washington discordou.

No documento entregue esta semana, o Google disse que a companhia não teria sido capaz de inovar caso a decisão do Circuito Federal tivesse sido aplicada quando a empresa surgiu.

(Por Dan Levine)

Fonte: Reuters

sexta-feira, 8 de agosto de 2014

Microsoft declara guerra ao Java no Internet Explorer

A Microsoft parece determinada a tornar a navegação na web mais segura. A empresa não apenas encerrará o suporte a versões antigas do seu navegador como também passará a bloquear versões ultrapassadas do plugin do Java.
A mudança passará a valer com a próxima rodada de atualizações mensais de segurança, que será publicada na terça-feira (12/08). Segundo a Microsoft, 80% dos ataques automáticos que aconteceram na web em 2013 são resultado de vulnerabilidades no Java. Na maioria dos ataques, o malware afeta falhas já corrigidas do plugin, mas o usuário acaba contaminado por não ter atualizado sua versão.
A partir de terça-feira, todas as edições suportadas do Internet Explorer irão impedir a execução doplugin desatualizado do Java e notificar o usuário de que sua versão está ultrapassada. O usuário ainda poderá optar por executar o plugin mesmo assim, mas a medida irá interromper ataques automatizados que não costumam ser percebidos.
activex-blocked
A princípio, as seguintes versões do Java serão bloqueadas:
  • J2SE 1.4, abaixo do update 43
  • J2SE 5.0, abaixo do update 71
  • Java SE 6, abaixo do update 81
  • Java SE 7, abaixo do update 65
  • Java SE 8, abaixo do update 11
A nova estratégia de segurança da Microsoft para Internet Explorer não irá se limitar ao Java. Outros controles ActiveX conhecidos por apresentar vulnerabilidades também farão parte de uma lista negra online, que ficará hospedada nos servidores da empresa e será sempre monitorada. O Internet Explorer deverá consultar essa lista antes de permitir a execução, evitando ataques automáticos.
Desde dezembro do ano passado, o Firefox passou a fechar as portas para o plugin do Java por padrão.

quarta-feira, 6 de agosto de 2014

Concurso INOVApps

O Concurso INOVapps tem como objetivo apoiar o desenvolvimento de aplicativos e jogos sérios de interesse público para dispositivos móveis e TVs digitais conectadas.
Estão habilitadas a participar do Concurso pessoas físicas e empresas. Na categoria pessoas físicas, enquadram-se autores ou desenvolvedores com no mínimo 18 anos de idade, brasileiros natos ou naturalizados. Na categoria empresas estruturadas, enquadram-se pessoas jurídicas estabelecidas no Brasil classificadas como microempreendedor individual, micro, pequenas e médias empresas.
As propostas de projetos submetidas devem estar enquadradas em um dos seguintes temas:
1. Direitos e Defesa do consumidor
2. Educação / Ensino
3. Saúde
4. Mobilidade Urbana
5. Segurança Pública
6. Turismo e Grandes Eventos
7. Gestão colaborativa de utilidade pública
8. Tratamento de indicadores de políticas públicas (dados abertos)
9. Difusão de campanhas de utilidade pública
O Concurso selecionará 25 projetos inéditos e originais de aplicativos de interesse público para dispositivos móveis com prêmio no valor de R$ 80 mil para cada app selecionados; e outros 25 jogos sérios, com prêmio no valor de R$ 100 mil para cada jogo selecionado.
Os apps e os jogos podem ser desenvolvidos para Android, iOS, HTML 5, Windows Phone, BlackBerry e Ginga.
Mais informações, Edital e inscrição:

Oracle corrige falha do Java que travava aplicações web

Há alguns dias a Oracle disponibilizou uma atualização para o Java que fazia com que alguns Web Apps simplesmente parassem de funcionar. O update, que deveria corrigir falhas de segurança, acabou prejudicando praticamente todos que o baixaram. Não demorou muito para que várias pessoas entrassem em pânico, principalmente aquelas que trabalham diretamente com aplicações de segurança em sistemas bancários. 
A histeria, no entanto, chegou ao fim nesta terça-feira (05), quando a Oracle disponibilizou um novo patch corretivo para sanar o problema causado pelo anterior. De acordo com uma publicação no blog oficial da empresa, a Oracle afirma que o novo update não se trata de "uma correção de segurança ou patch crítico", mas que apenas corrige a falha causada pelo Java 7 Update 65. 
Para os que desejam atualizar o Java para sua última versão, devem acessar a página de download do plugin e instalá-lo o quanto antes. 

Embora o update corrija os problemas, há uma série de relatos de impossibilidade de atualização do plugin. Para quem está enfrentando esta dificuldade, a Oracle orienta acessar o Painel de Controle do Java, selecionar a aba "Java" e em seguida clicar em "Visualizar", ou "View" se você estiver usando a versão em inglês do plugin. 

Uma vez lá, o usuário deve inserir o número 7 no campo "parâmetros de execução", ou "runtime parameters" em inglês, e apagar tudo o que possa estar lá.
A falha causada pelo Update 65 reacendeu uma preocupação antiga da comunidade de desenvolvedores Java. Desde que a Oracle adquiriu a Sun Microsystems em 2010 que os profissionais alertam a norte-americana sobre a existência de graves vulnerabilidades de segurança na linguagem de programação. 
Apesar da pressão, somente no ano passado o diretor de segurança do Java se manifestou favoravelmente à correção das falhas, garantindo que elas seriam corrigidas o quanto antes. Contudo, aparentemente nem todas as falhas foram corrigidas já que o levante ocorreu novamente. 

Fonte: CanalTech

sexta-feira, 1 de agosto de 2014

Evento ALJUG - 2014

Bom dia pessoALL,


Dando continuidade aos nossos eventos anuais, estamos realizando neste ano junto com o COALTI palestras para enriquecer nossos conhecimentos. No dia 27 de Setembro no Centro de Convenções, você tem um compromisso com o ALJUG. Para poder participar você deverá fazer a inscrição no COALTI! 


Temos o Apoio da Novatec!


Neste anos convidamos grandes nomes do cenário Java no País:

Rafael Ponte;e
Hébert Coelho;

O primeiro tem um vasto conhecimento em Hibernate, assunto que irá abordar no evento, não só neste assunto, mas em JSF ,que é referencia para muitos,em geral. Desenvolvedor, consultor e co-fundador da empresa TriadWorks. Tira muitas dúvidas no google group JSF Internacional.

O segundo é autor dos livros JSF eficaz e JPA Eficaz, também é autor do framework EasyCriteria. Tem um blog muito visitado, com vários mini-books. Assim como o Rafael ele também é referência para muitos, inclusive ajudando nos fóruns.

Desses dois são muitas qualidades.


Palestras:
Hibernate Efetivo - Rafael Ponte.
Protegendo minha aplicação - Hébert Coelho.



Em breve mais e boas novidades!


quarta-feira, 23 de julho de 2014

Vulnerabilidades do Internet Explorer crescem 100% desde 2013

Conclusão é de estudo da empresa Bromium Labs, que analisou vulnerabilidades públicas e exploits dos primeiros seis meses de 2014.

A empresa Bromium Labs analisou vulnerabilidades públicas e exploits dos primeiros seis meses de 2014. A pesquisa revelou que as vulnerabilidades do Internet Explorer cresceram mais de 100% desde 2013, ultrapassando as falhas do Java e do Flash.

Segundo a análise, no ano passado, o Java registrou muitas vulnerabilidades e exploits públicos, mas essa tendência foi revertida em 2014. Na verdade, nos primeiros seis meses deste ano, não houve qualquer Java exploit público.

“Usuários finais continuam sendo uma preocupação primária para profissionais de segurança por serem os alvos mais suscetíveis a ataques”, disse Rahul Kashyap, arquiteto chefe de segurança da Bromium. “Navegadores sempre foram um dos alvos preferidos de ataques, mas temos notado que os criminosos não estão apenas ficando melhores em atacar o Internet Explorer, mas têm feito isso com mais frequência”, completou.

O relatório completo está disponível aqui.


Fonte: Imasters

sexta-feira, 18 de julho de 2014

O Futuro do Java no Windows XP

Em Abril deste ano de 2014, a Microsoft anunciou o fim do suporte ao Windows XP. Como resultado direto, a Oracle anunciou que não mais dará suporte oficial para o Java no Windows XP. O que isso resulta é que um cliente com um contrato de suporte junto à Oracle pode ter que reproduzir um problema encontrado no Windows XP numa versão recente do Windows, e caso o problema seja específico ao Windows XP a Oracle não é obrigada (ou pode não ter os meios) para corrigir o problema ou oferecer uma solução de contorno (workaround).

 Este anúncio do fim do suporte tem sido interpretado incorretamente como "Java não funciona mais no Windows XP" ou "Oracle não irá disponibilizar mais atualizações para o Java no Windows XP". Estas afirmativas estão incorretas.

Nossa expectativa é que todas as versões do Java, que eram suportadas antes do anúncio de fim de suporte da Microsoft, continuarão funcionando no Windows XP num futuro próximo. Em particular, nossa expectativa é que o JDK 7 continuará funcionando no Windows XP. Atualizações de segurança lançadas pela Oracle continuarão sendo disponibilizadas para desktops com Windows XP. Usuários que fizerem o download do JDK 7 no java.oracle.com ou java.com continuarão podendo instalar no Windows XP.

JDK 8 não é suportado no Windows XP, e existem problemas conhecidos com o instalador para Windows XP que impedem de instalar o Java sem intervenção manual. Nós estamos buscando possíveis formas para resolver este problema mas talvez não o faremos - caso você esteja usando Windows XP talvez não valha a pena atualizar para o Java 8 sem atualizar também para uma versão recente do Sistema Operacional Windows.

O ponto importante aqui é que nós não podemos mais oferecer completa garantia do Java no Windows XP, já que este SO não é mais atualizado pela Microsoft. Nós fortemente recomendamos que usuários atualizem para uma versão recente do Windows que seja suportada pela Microsoft para manter um ambiente estável e seguro.

P: Eu recentemente li na Internet que a próxima atualização de segurança da Oracle para o JDK 7 não funcionará no Windows XP. Isto está correto?
R: Não. Não acredite em tudo que você lê na Internet.

P: Eu tenho um desktop/laptop com Windows XP. Continuarei recebendo atualizações automáticas do JDK 7 quando a Oracle lançar uma nova atualização de segurança?
R: Sim, ao menos até o End of Public Updates para o JDK 7 que no momento está agendado para Abril de 2015. Leia mais em Java Support Roadmap.

P: O que acontecerá após o End of Public Updates para o JDK 7?
R: Nós continuaremos monitorando as aplicações das atualizações no Windows XP. Se o uso continuar alto quanto chegarmos perto desta data, nós tomaremos medidas para manter usuários do Java seguros. Existem opções disponíveis ao nosso alcance caso isso se torne necessário.

P: Posso instalar JDK 8 no Windows XP? Vai funcionar? 
R: O instalador não funciona no Windows XP. Você pode descompactá-lo manualmente e provavelmente irá funcionar.

P: Minha empresa está usando Windows XP Embedded, que ainda é suportado pela Microsoft. A Oracle irá suportar neste caso?
R: Nós nunca suportamos oficialmente Windows XP Embedded para qualquer versão do Java. No entanto, desde que a Microsoft forneça suporte para o Windows XP Embedded, poderemos considerar isso. Entre em contato com um representante de vendas do Java na sua região se você tem uma necessidade para isso.

quinta-feira, 17 de julho de 2014

Google tem novo curso online para ensinar desenvolvimento de apps Android.

O Google divulgou nesta quarta-feira (16) uma nova parceria com a organização de ensino online Udacity para a criação de um curso focado no desenvolvimento de apps para o Android. 

Chamado "Desenvolvendo Android Apps: os Fundamentos do Android", o curso tem como público alvo desenvolvedores que ainda não conhecem bem o sistema operacional móvel do Google ou desenvolvimento móvel em geral.

É recomendado, no entanto, ao menos três anos de experiência em programação em linguagem Java ou qualquer outra linguagem orientada a objeto, como C++, Objective C ou Python.

O curso terá duração de aproximadamente oito semanas e custa US$ 150/mês. O valor dará acesso ao feedback e orientação de "treinadores" e engenheiros de software do Google. A primeira turma já está preenchida, mas você pode se inscrever para receber uma notificação quando a segunda turma tiver início.

Para quem não quiser pagar, também será possível baixar todo o material de texto e vídeo do curso gratuitamente - mas sem acesso aos treinadores.

Para quem quiser começar, também é indicado dar uma passada pelos cursos de "UX Design para Desenvolvedores Mobile" e "Desenvolvimento Mobile Web", também disponíveis na Udacity.

Fonte: CanalTech

Oracle vai parar de corrigir falhas no Java para Windows XP

A Oracle anunciou na última semana que vai terminar o suporte do Java para o Windows XP. Ou seja, o plugin vai continuar funcionando normalmente nos computadores que usam o antigo sistema operacional da Microsoft, mas correções de falhas e bugs não serão lançadas para ele no futuro.

A decisão foi tomada após a Microsoft encerrar o suporte para o Windows XP. Os usuários que ainda utilizam o sistema vão poder instalar e usar o plugin e também vão receber outros tipos de atualizações, garantiu o vice presidente de gerenciamento de produtos de Java da Oracle, Henrik Stahl.

A única diferença, ressalta, é que a empresa vai parar de corrigir eventuais falhas - incluindo de seguranças -que afetam apenas o sistema operacional, focando em correções para outras plataformas. “Nós esperamos que todas as versões do Java que eram suportadas antes do anúncio da Microsoft continuem funcionando no Windows XP”, garante.

As mudanças afetam apenas a versão 7 do Java, já que a versão 8 não foi projetada para ser usada no Windows XP, embora possa ser instalada por métodos não convencionais. A Oracle recomenda que os usuários atualizem seus sistemas antes de tentarem instalar o Java 8 nestes computadores.

Fonte: TechTudo

sexta-feira, 11 de julho de 2014

Java lidera ranking das linguagens de programação mais utilizadas no mundo

Olá pessoALL!

Quanto tempo não é verdade? Estaremos mais próximos nos dias que vem!

Pensa em começar ou recomeçar a desenvolver em uma linguagem, mas não sabe em qual? Pois este ranking da IEEE pode ajudar: recentemente atualizado e com o Java na liderança (a frente de C, C++, Python e tantas outras), ele lista as mais populares baseando-se em doze fontes de dados diferentes, que vão do Google e do GitHub ao Stack Overflow e o fórum Hacker News.

As linguagens aparecem em um ranking geral ou podem ser divididas em quatro categorias: web, desktops, mobile e embedded. Além da lista geral, dá para ver quais delas estão crescendo mais em termos de interesse, demanda de empregos ou popularidade em fóruns e redes sociais. E por incrível que pareça (ou não), o Java lidera em quase todas essas classificações com seus 100 pontos – ao contrário do que acontece no índice da Tiobe, por exemplo.

No ranking geral, ele vem seguido de perto pelo C, com 99,2 pontos, e depois pelo C++, com 95,2. Python, C# e PHP aparecem logo abaixo, enquanto JavaScript, Ruby, R e MATLAB fecham o top 10. A lista com todas as linguagens engloba outras 39, e a lanterninha é a bem específica NetLogo, com nenhum ponto. Aliás, a Swift, da Apple, ainda não aparece em uma posição, mas seu "antecessor" Objective-C está em 16º.



Fonte: Info

terça-feira, 11 de março de 2014

Lançamento do Java 8

O lançamento mundial do Java 8 acontecerá no próximo dia 25 às 14 horas, no horário de Brasília, e as inscrições para o Webcast já estão abertas.

Faça sua inscrição no site do evento.

Além da palestra de lançamento ao vivo, estarão disponíveis mais de 35 sessões técnicas e fórum para perguntas.

Se você quiser enviar perguntas para a equipe de arquitetos da Oracle com antecedência, basta usar a hastag #Java8 no twitter.

Fonte: SouJava

quinta-feira, 6 de março de 2014

JAX-RS 2.0 Jersey Client API - #AdoptaJSR #JSR339

Olá pessoal, esse post faz parte do programa Adote uma JSR com GujavaSC e falaremos hoje sobre a JSR 339 mais especificamente sobre nova funcionalidade Client API. Essa funcionalidade é utilizada para acessar recursos web e fornece uma API de mais alto nível que HttpURLConnection.

O artigo irá mostrar um exemplo de como você pode utilizar a nova Client API do JAX-RS 2.0 do Jersey.

Para esse projeto usaremos o JBOSS AS 7.1 Port 8082 com maven (pom está no github), o objetivo será consumir serviços REST e saber lidar com as respostas retornadas por ele.

Então vamos começar!

Essa primeira linha de código irá criar e retornar uma instância do client.
Client orderClient = ClientBuilder.newClient();
O próximo passo é criar um WebTarget (representa um recurso identificado por uma URI), construir um request e submetê-lo utilizando GET. Nesse exemplo estaremos pedindo por um objeto chamado Order identificado pelo id 1.

WebTarget target = orderClient.target("http://localhost:8082/rest-client-api-example/resources/orders/{id}"); Response response = target .resolveTemplate("id",1) .request(MediaType.APPLICATION_JSON) .get();
Para explicar cada passo do que aconteceu no código anterior iremos quebrá-lo em partes, como você pode ver abaixo:

orderClient.target(URI) - Retornará um Webtarget que representa a URI
target.resolveTemplate("id", 1) - Cria uma nova instância de WebTarget e substitui o template pelo valor passado
target.request(MediaType.APPLICATION_JSON) - Cria uma nova instância de WebTarget e começa a construir uma request com os media types aceitos
target.get() - Invoca o método HTTP GET para o request de forma síncrona e retorna uma Response

Uma outra coisa que você pode notar, é que o objeto da classe WebTarget é imutável quando diz respeito a URI e mutável quanto a sua configuração. Não entraremos em detalhes aqui, porém toda vez que utilizarmos métodos que modifiquem a URI um novo objeto será criado, em contrapartida quando a configuração de um WebTarget é modificada, novas instâncias não serão criadas.

Na última linha do código anterior você poderia usar outro método HTTP como post(), put() ou qualquer outro que você escolher. Depois você só tem que verificar se a Response está OK (Código 200) e ler a entidade. Se você está tentando ler uma List isso funcionará um pouco diferente e eu estarei falando sobre isso à seguir.
 
Então se o serviço estiver rodando e tudo está correto, você receberá a instância de Order do servidor e seus dados serão imprimidos no console.
if(response.getStatus() == Status.OK.getStatusCode()){
    Order order = (Order) response.readEntity(Order.class);
 System.out.println("Id: "+order.getId());
 System.out.println("Name: "+order.getName());
 System.out.println("Price: "+order.getPrice());
}else{
 System.out.println(response.getStatus()+ " "+ response.getStatusInfo());
}

Você provavelmente precisará também requisitar ao servidor listas genéricas e para fazer isso será um pouco diferente. No código abaixo você vai criar um WebTarget com uma requisição, assim como foi passado anteriormente, e ao invés de passar um id você pedirá por toda a lista the /orders.

WebTarget target = orderClient.target("http://localhost:8082/rest-client-api-example/resources/orders");
Response response = target .request(MediaType.APPLICATION_JSON) .get();

O retorno é um pouco diferente quando usamos tipos genéricos, você terá que instanciar uma sub-classe anônima de GenericType passando List que é o que você deseja receber. 
List<Order> orders = response.readEntity(new GenericType<List<Order>>() {});

Fazendo isso você receberá uma lista de Order e assim manipular da maneira que você achar melhor.

O exemplo completo está no github do adoptajsr, fique à vontade para fazer utilizar como quiser. Lá você também encontrará o serviço REST e a implementação do cliente.

Participem do programa Adote uma JSR com GujavaSC se inscrevendo na lista do AdoptaJSR. Após se inscrever mande um email se apresentando e pergunte como participar!

Fonte: GujavaSC