E comum ao tentarmos fazer o deploy de uma aplicacao recebermos um erro de ClassNotFoundException. Este e o tipo de erro bem chato de descobrir e algumas vezes temos certeza que a classe esta presente no lib do dominio ou disponivel para aplicacao de alguma forma, seja como shared lib ou no classpath do servidor direto. E entao o que fazer, como pode estar acontecendo de a classe COM CERTEZA estar disponivel e mesmo assim a excecao de ClassNotFound estar ocorrendo? Bem, nesse caso e bastante util fazer o classloader ficar em modo verbose para vermos direitinho quais as classes e em que ordem o weblogic esta carregando-as.Para fazer isso basta adicionarmos como parametro de JVM do servidor desejado o seguinte: -Dweblogic.utils.classloaders.FilteringClassLoader.VerboseFeito isso ao reiniciarmos o servidor iremos ver o classloader aparecendo para cada classe que for procurada, neste formato: ...[FilteringClassLoader] : **** FilteringClassLoader ... findClass(..) weblogic.jndi.WLInitialContextFactory[FilteringClassLoader] : **** FilteringClassLoader ... findClass(..) weblogic.jndi.factories.java.javaURLContextFactory[FilteringClassLoader] : **** FilteringClassLoader ... findClass(..) String[FilteringClassLoader] : **** FilteringClassLoader ... findClass(..) com.bea.common.security.store.data.String[FilteringClassLoader] : **** FilteringClassLoader ... findClass(..) String[FilteringClassLoader] : **** FilteringClassLoader ... findClass(..) com.bea.common.security.store.data.String[FilteringClassLoader] : **** FilteringClassLoader ... findClass(..) String[FilteringClassLoader] : **** FilteringClassLoader ... findClass(..) com.bea.common.security.store.data.String[FilteringClassLoader] : **** FilteringClassLoader ... findClass(..) String...Com o debug do classloader fica bem mais facil entender e descobrir a causa do ClassNotFoundException e com isso solucionar o problema. Fica tambem uma dica, caso seja necessario pode-se inverter o classloader da aplicacao web para que o weblogic utilize como preferenciais os .jar empacotados no lib do seu .war, para isso basta colocar a seguinte configuracao no weblogic.xml da sua aplicacao: ... true ...[]s Ja me deparei mais de uma vez com a necessidade de descobrir o PID de um processo que esta ocupando uma porta do S.O mas nao consigo liberar a porta por nao ter o id do processo podendo assim forcar que ele pare de executar. Entao segue a dica de como faze-lo: Linux: netstat -tulpnVoce devera ver uma saida como a imagem abaixo, perceba que o PID aparece na ultima coluna(PID/Program name) e a porta na quarta coluna (Local Address): Se voce quiser ver somente uma porta especifica utilize o grep: netstat -tulpn |grep ${NUMERO_DA_PORTA}A saida sera conforme a imagem abaixo:Uma outra opcao no Linux e outros unix like O.S e usar o lsof: lsof |grep ${NUMERO_DA_PORTA}Solaris:No solaris siga a dica e execute os scripts que o Fabio Morais postou neste link. E bastante comum eu me deparar com um cenario onde preciso liberar porta de entrada para acessar algum servidor em um ambiente linux. Entao segue a dica para liberar as portas desejadas no IPTables.Para liberar portas usando o iptables edite o arquivo: /etc/sysconfig/iptablesSe voce quer liberar a porta 8080 no protocolo tcp, adicione a seguinte linha:-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPTFeito isso basta reiniciar o iptables(se estiver logado como root nao precisa do comando sudo): sudo service iptables restart Primeiro va ao site do Apache Maven e baixe a ultima versao disponivel.Se preferir pode usar o wget de um console shell para baixa-lo: wget http://apache.mirror.pop-sc.rnp.br/apache/maven/maven-3/3.0.4/binaries/apache-maven-3.0.4-bin.tar.gzNo exemplo do wget acima usei o primeiro