h1

OCWCD 5 Guia de Estudos

dezembro 19, 2011

Pessoal, deixei o blog de lado por um bom período devido a várias mudanças, acontecimentos e estudos. Bom retornando a rotina, o post que irei publicar hoje é sobre a Certificação SCWCD 1.5 (ou OCWCD 1.5) que obtive na semana passada com um score de 86%.
Essa certificação, atualmente realizada pela PearsonVUE, segue os mesmos padrões de antes da Prometric.

De acordo com a prova que fiz, minha dica é aprender os seguintes tópicos:

  • Design Patterns;
  • TagFile;
  • Utilização dos listeners;
  • Conhecimento da API ServletRequest, ServletResponse e o HTTP;
  • Uso de Autenticações Declarativas e Segurança;
  • Uso de TagLib (Simple Tags, Classic Tag, Custom Tags);
  • Diferenças entre SimpleTag e ClassicTag;
  • EL Expressions (acessando Maps, Bean, pageContext);
  • Tags JSTL Standard e Custom(c:import, c:include, c:url, jsp:include);
  • Acesso a arquivos na estrutura do WAR.

Sobre o que estudar, eu recomendo o livro Head First JSP & Servlet (eu estudei com o da versão JEE1.4) e o SCWCD Study Companion
Já os mocks estudei por versões trials de JWebPlus e Whizlabs, e também por um que ganhei da própria PearsonVUE feito online pelo site. Além dos teste que estão nos livros.

Abaixo relacionei alguns links externos úteis:
Anotacoes OCWCD5
Resumo Head First
Dicas do Exame
Material de Estudo

Qualquer dúvida, podem entrar em contato comigo.
Um abraço a todos e boas festas!

h1

Problema com Clientgen BEA Weblogic

maio 31, 2011

Hoje, ao tentar gerar Stubs de um serviço (WebServices) pelo clientgen do Workshop 10.3.3 me deparei com o seguinte problema:

O problema
Ao tentar executar um o build.xml do clientgen de determinado projeto WebServices obtive a seguinte exceção:
taskdef class weblogic.wsee.tools.anttasks.ClientGenTask cannot be found

Ao pesquisar pelo problema, descobri que era devido a ausência de alguns JARs no Ant Home da ferramenta em questão (BEA Workshop 10.X).

A solução
Para resolver o problema é bem simples, basta seguir os passos abaixo:
1) Dentro do BEA Workshop 10.X entre em: MenuBar > Window > Preferences > Ant > Runtime
2) Em seguida selecionar a Aba Classpath > Ant Home Entries (Default)
3) Clique em Add External JARs
4) Adicione os seguintes JARs (weblogic.jar, webserviceclient.jar, wseeclient.jar) que podem ser encontrados na instalação do BEA em %BEA_HOME%\wlserver10.3.3\server\lib
5) Após adicioná-los, selecione os três JARs que foram incluídos e coloque-os no topo da lista clicando no botão UP

Pronto, em seguida basta executar novamente o arquivo de build do clientgen.

h1

Problemas com JBoss 5.1 no Eclipse

outubro 14, 2010

Há algum tempo passei por um problema tentando executar o JBoss 5.1 a partir do Eclipse, e gostaria de compartilhar com vocês.
Ao tentar executar o servidor a partir do Eclipse eu recebia a seguinte exceção no console:

DEPLOYMENTS IN ERROR:
Deployment “AttachmentStore” is in error due to: java.lang.IllegalArgumentException: Wrong arguments. new for target java.lang.reflect.Constructor expected=[java.net.URI] actual=[java.io.File]

Depois de procurar um pouco, vi que este erro não é muito recente e é ocasionado devido a um problema no profile do JBoss que por sua vez já foi corrigido na versão 6.0 do mesmo.
A resolução desse problema é bem simples, basta editar o arquivo localizado em: $JBOSS_HOME/server/[all | default | minimal | standard | web]/conf/bootstrap/profile.xml
E procurar pela linha com as seguintes informações:
<bean name="AttachmentStore" class="org.jboss.system.server.profileservice.repository.AbstractAttachmentStore"\>
<constructor><parameter><inject bean="BootstrapProfileFactory" property="attachmentStoreRoot" /></parameter></constructor>
// Restante do código...

Em seguida altere por essas linhas abaixo:
<bean name="AttachmentStore" class="org.jboss.system.server.profileservice.repository.AbstractAttachmentStore">
<constructor><parameter class="java.io.File"><inject bean="BootstrapProfileFactory" property="attachmentStoreRoot" /></parameter></constructor>
// Restante do código...

Pronto, agora é só iniciar o JBoss novamente e problema será solucionado.

Mais informações sobre esse problema, pode ser encontrado nos links abaixo:
Jira
JBoss Lists

Atte,
Wilson

h1

Novidades nas Collections Java 6

janeiro 14, 2010

Na ultima versão do Java 6, foi anunciado a adição de novas interfaces para as Collections, são elas:

  • NavigableMap
  • NavigableSet
  • ConcurrentNavigableMap
  • Deque
  • BlockingDeque

NavigableMap, ConcurrentNavigableMap e NavigableSet
NavigableMap – é uma estenção de SortedMap, com métodos de navegação para retornar o mais próximo target encontrado para determinadas pesquisa;
NavigableSet – é uma estenção de NavigableSet, com métodos de navegação para retornar informações do mais próximo target encontrado para determinadas pesquisa;
ConcurrentNavigableMap – a classe que implementa a ConcurrentNavigableMap é a ConcurrentSkipListMap que é uma forma lista encadeada ordenada que mantém listas paralelas para acelerar o tempo de busca. O mapa é classificado de acordo com a ordenação natural suas chaves, mas se você quiser a sua própria ordem de classificação, então precisa implementar a interface Comparator e fornecer essa implementação para o mapa, no momento da criação.

Deque
Deque é uma combinação duas estruturas (Fila e Pilha), ou seja, o Deque pode ser usado tanto como uma fila (FIFO) quanto como uma pilha (LIFO).
As classes que implementam a interface Deque em Java 6 são LinkedList, LinkedBlockingDeque, ArrayDeque. O LinkedList teve que ser re-escrito para implementar interface Deque.
Qualquer implementação do Deque não permite que a inserção de elementos nulos, porque null é utilizado como um valor de retorno por vários métodos indicando a coleção está vazia.

Fila (que suporta a adição de um lado e remoção do outro lado);
Pilha (que suporta adição e remoção de um único lado);

BlockingDeque
O BlockingDeque, é um Deque que suporta operações de bloqueio e aguarda para que o espaço se torne disponível no Deque ao armazenar um elemento. BlockingDeque é parte do pacote java.util.concurrent que nos poupou de lidar com os métodos wait, notify e notifyAll. Assim como o Deque, ele também não permite elementos nulos.

Para mais informações a respeito das Collections, acesse este site.

Atte,
Wilson Bissi

h1

Gerando um arquivo JKS

janeiro 12, 2010

Com a disponibilização de diversos serviços web que repartições públicas fornecem para consulta/envio de dados, muitos desenvolvedores atualmente deve ter trabalhado com algum projeto do tipo.

Para gerar o arquivo JKS, que muitos sistemas usam para se comunicarem com os webservices da SEFAZ, basta executar os seguintes passos:

1 – Baixar o arquivo http://acraiz.icpbrasil.gov.br/CertificadoACRaiz.crt usando o navegado Internet Explorer;
2 – Executar o seguinte comando no prompt do DOS (cmd):
C:\>keytool -import -alias nfe -keystore nome_arquivo.jks -file C:\CertificadoACRaiz.cer
e digitar alguma senha e responder /yes/ na pergunta que aparecerá em seguida.

Esse post explica de forma simples como gerar o arquivo, para obter maiores detalhes a respeito o GUJ oferece um artigo mais detalhado aqui.

Atte,
Wilson Bissi

h1

JBoss 4.2.x rodando com JDK 1.6

outubro 8, 2009

Muitos se deparam com um problema ao tentar executar o servidor de aplicações JBoss nas versões 4.2.x com a versão da JDK1.6.x, onde é lançado algumas exceções. Isso ocorre devido a incompatibilidade com das bibliotecas de webservices.
Para corrigir esse problema é necessário seguir os seguintes passos:

1) Copie as seguintes bibliotecas da pasta %JBOSS_HOME%\client

  1. jaxb-api.jar
  2. jboss-jaxrpc.jar
  3. jboss-jaxws.jar
  4. jboss-jaxws-ext.jar
  5. jboss-saaj.jar

2) Cole as bibliotecas copiadas na pasta %JBOSS_HOME%\lib\endorsed

E pronto agora é só dar um restart no server que já estará funcionado.

Na versão do JBoss 5 as bibliotecas que deverão ser alteradas são as seguintes, segundo a edição 69 da revista Java Magazine:

  1. jbossws-native-jaxrpc.jar
  2. jbossws-native-jaxws.jar
  3. jbossws-native-jaxws-ext.jar
  4. jbossws-native-saaj.jar

* Isso é válido para as versões do JBoss compilados com JDK 1.5 que são executados utilizando JDK 1.6

Atte,
Wilson Bissi

h1

Auto Completar xhtml no Eclipse 3.x

setembro 27, 2009

Olá pessoal,

Muitos programadores que utilizam o Eclipse versão 3.x se deparam com uma coisa chata no desenvolvimento de páginas JSF, o auto completar para as tags não funcionam ='(
Isso afeta diretamente a produtividade do desenvolvimento dessas páginas, pois nem todo programador lembra quais são as tags/atributos que irá utilizar nos componentes e ficar consultando a documentação se torna inviável.
Para resolver isso, é necessário apenas uma simples configuração no Eclipse:
Entre em: Window -> Preferences -> General
1. Content Types selecione Text -> JSP clique no botão Add e adicione a extensão *.xhtml como File Association;
2. Editors -> File Associations selecione a extensão *.xhtml em File Type e adicione JSP Editor como Default.

Pronto agora é só fechar as páginas *.xhtml que estão abertas e abri-las novamente para que as alterações tenham efeito.

Atte,
Wilson Bissi