É sabido que hover não funciona no IE6.
Sua funcionalidade foi implementada somente do IE7 para frente.
Temos um Menu dropdown feito em CSS, utilizando o hover.
Claro, não funcionou no IE6.
Estudamos soluções javascript pura, csshover3.htc, jquery e falhou em todas elas.
A solução que melhor atendeu nossa demanda foi o projeto ie7-js, hoje hosteado pelo google.
Basta colocar o código abaixo dentro do head e o Browser irá se comportar como o IE7:
<!--[if lt IE 7]>
<script src="http://ie7-js.googlecode.com/svn/version/2.1(beta4)/IE7.js"></script>
<![endif]-->
Link de referência:
http://code.google.com/p/ie7-js/
sexta-feira, 22 de outubro de 2010
sexta-feira, 15 de outubro de 2010
Como mudar (trocar) o nome da máquina e manter o Oracle 10g funcionando
Na última semana realizamos alteração do nome de um servidor Oracle e o serviço TSN Listener (OracleXETNSListener) parou de funcionar.
Realizamos 2 alterações para que o serviço tivesse seu funcionamento normalizado: atualizamos os arquivos "tnsnames.ora" e "listener.ora" com o novo novo do servidor.
Em seguida, reiniciamos os serviços OracleServiceXE e OracleXETNSListener;
No nosso caso, utilizamos o Oracle XE e os arquivos relacionados ficam no diretório "D:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\ADMIN"
Link de referência:
http://geekswithblogs.net/svanvliet/archive/2007/04/03/how-to-change-windows-hostname-and-keep-oracle-10g-running.aspx
Realizamos 2 alterações para que o serviço tivesse seu funcionamento normalizado: atualizamos os arquivos "tnsnames.ora" e "listener.ora" com o novo novo do servidor.
Em seguida, reiniciamos os serviços OracleServiceXE e OracleXETNSListener;
No nosso caso, utilizamos o Oracle XE e os arquivos relacionados ficam no diretório "D:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\ADMIN"
Link de referência:
http://geekswithblogs.net/svanvliet/archive/2007/04/03/how-to-change-windows-hostname-and-keep-oracle-10g-running.aspx
Como gerenciar profiles no IBM Websphere Application Server
IBM WebSphere Application Server 7 (WAS 7): manageprofiles.sh
O utilitário manageprofiles.sh é utilizado para gerenciar profiles. Entre seus aspectos, podemos excluir um profile.
Listar os profiles existentes:
/bin/manageprofiles.sh -listProfiles
Excluir um profile: nesse exemplo, o nome do profile é "appsrv01"
/bin/manageprofiles.sh -delete -profileName appsrv01
Em seguida, foi excluído fisicamente o diretório do profile "appsrv01".
Site de referência:
http://www.webspheretools.com/sites/webspheretools.nsf/docs/Delete%20a%20profile%20using%20manageprofiles.sh%20in%20WebSphere%207%20on%20centos5
O utilitário manageprofiles.sh é utilizado para gerenciar profiles. Entre seus aspectos, podemos excluir um profile.
Listar os profiles existentes:
Excluir um profile: nesse exemplo, o nome do profile é "appsrv01"
Em seguida, foi excluído fisicamente o diretório do profile "appsrv01".
Site de referência:
http://www.webspheretools.com/sites/webspheretools.nsf/docs/Delete%20a%20profile%20using%20manageprofiles.sh%20in%20WebSphere%207%20on%20centos5
ADMIN_CMD DB2 - Comandos CLP
Comandos como export, import, load, ... são chamados comandos CLP (Command Line Processor) e não podem ser executados diretamente por uma aplicação cliente via ODBC ou JDBC como fazemos com comandos SQL (select, insert, update, ...)
Para executar os comandos CLP existe uma procedure chamada "admin_cmd" utilizada para esse propósito.
Pequeno exemplo Java para chamada dessa procedure:
Nesse exemplo temos a tabela "banco01.area" no servidor "servidor01"
Class.forName("com.ibm.db2.jcc.DB2Driver").newInstance();
con = DriverManager.getConnection("jdbc:db2://servidor01:50000/" + "banco01", "usuario", "senha");
String sql = "CALL SYSPROC.ADMIN_CMD(?)";
proc_stmt = con.prepareCall(sql);
String param = "export to c:\\temp\\area4.txt of del messages on server select * from area";
proc_stmt.setString(1, param);
rs = proc_stmt.executeQuery();
if (rs.next()) {
System.out.println("Total number of rows exported : " + rs.getString(1));
System.out.println("SQL for retrieving the messages: " + rs.getString(2));
System.out.println("SQL for removing the messages : " + rs.getString(3));
System.out.println(" ");
proc_stmt_msg = con.prepareCall(rs.getString(2));
rs_msg = proc_stmt_msg.executeQuery();
while (rs_msg.next()) {
System.out.println(rs_msg.getString(1) + rs_msg.getString(2));
}
proc_stmt_msg.close();
rs_msg.close();
}
proc_stmt.close();
rs.close();
con.close();
Link de referência:
http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=/com.ibm.db2.udb.apdv.sample.doc/doc/java_jdbc/s-AdmCmdImport-java.htm
Para executar os comandos CLP existe uma procedure chamada "admin_cmd" utilizada para esse propósito.
Pequeno exemplo Java para chamada dessa procedure:
Nesse exemplo temos a tabela "banco01.area" no servidor "servidor01"
Class.forName("com.ibm.db2.jcc.DB2Driver").newInstance();
con = DriverManager.getConnection("jdbc:db2://servidor01:50000/" + "banco01", "usuario", "senha");
String sql = "CALL SYSPROC.ADMIN_CMD(?)";
proc_stmt = con.prepareCall(sql);
String param = "export to c:\\temp\\area4.txt of del messages on server select * from area";
proc_stmt.setString(1, param);
rs = proc_stmt.executeQuery();
if (rs.next()) {
System.out.println("Total number of rows exported : " + rs.getString(1));
System.out.println("SQL for retrieving the messages: " + rs.getString(2));
System.out.println("SQL for removing the messages : " + rs.getString(3));
System.out.println(" ");
proc_stmt_msg = con.prepareCall(rs.getString(2));
rs_msg = proc_stmt_msg.executeQuery();
while (rs_msg.next()) {
System.out.println(rs_msg.getString(1) + rs_msg.getString(2));
}
proc_stmt_msg.close();
rs_msg.close();
}
proc_stmt.close();
rs.close();
con.close();
Link de referência:
http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=/com.ibm.db2.udb.apdv.sample.doc/doc/java_jdbc/s-AdmCmdImport-java.htm
terça-feira, 28 de setembro de 2010
Como instalar o nmon no Linux
Para quem não conhece o nmon é um excelente utilitário de monitação no Linux.
Referência: http://nmon.sourceforge.net/pmwiki.php
A sua instalação é simples
1. Faça o download da versão compatível com o seu Linux
http://nmon.sourceforge.net/pmwiki.php?n=Site.Download
No meu caso, baixei o arquivo "nmon_x86_12a.zip" para o Red Hat 5.4
2. Descompacte o zip e renomeie o arquivo "nmon_x86_rhel52" para "nmon"
3. Copie o arquivo "nmon" para o diretório "/usr/bin" e dê direito de execução para esse arquivo
4. Pronto! Digite nmon para iniciar o aplicativo.
Como exemplo, selecione as opções c, m e d. Basta digitar as letras após iniciar o nmon.
Referência: http://nmon.sourceforge.net/pmwiki.php
A sua instalação é simples
1. Faça o download da versão compatível com o seu Linux
http://nmon.sourceforge.net/pmwiki.php?n=Site.Download
No meu caso, baixei o arquivo "nmon_x86_12a.zip" para o Red Hat 5.4
2. Descompacte o zip e renomeie o arquivo "nmon_x86_rhel52" para "nmon"
3. Copie o arquivo "nmon" para o diretório "/usr/bin" e dê direito de execução para esse arquivo
4. Pronto! Digite nmon para iniciar o aplicativo.
Como exemplo, selecione as opções c, m e d. Basta digitar as letras após iniciar o nmon.
segunda-feira, 27 de setembro de 2010
WebSphere Application Server como serviço no Linux
Colocar o Websphere Application Server como serviço do Linux (ou Windows).
[root@localhost bin]# pwd
/opt/IBM/WebSphere/AppServer-7.0/bin
Deployment Manager
[root@localhost bin]# ./wasservice.sh -add dmgr -serverName dmgr -profilePath /opt/IBM/WebSphere/AppServer-7.0/profiles/Dmgr01/ -user_id [usuario] -password [senha]
Node Agent
[root@localhost bin]# ./wasservice.sh -add nodeagent -serverName nodeagent -profilePath /opt/IBM/WebSphere/AppServer-7.0/profiles/AppSrv01/ -user_id [usuario] -password [senha]
Server (server1)
[root@localhost bin]# ./wasservice.sh -add server1 -serverName server1 -profilePath /opt/IBM/WebSphere/AppServer-7.0/profiles/AppSrv01/ -user_id [usuario] -password [senha]
Servers
Outro modo de deixar os servidores de aplicativos iniciarem automáticamente é trocar o parâmetro "Node restart state" para "RUNNING". Desse modo, quando iniciar o nodeagent, o server também será iniciado automáticamente. Basta criar o serviço de inicialização para o nodeagent.
Para alterar esse valor vá em "Application servers --> server1 --> Monitoring Policy", onde "serve1" é o nome do servidor de aplicativo. Altere o valor para todos os servers que deseja iniciar automáticamente quando o nodeagent for iniciado.
Reiniciar o Servidor e verificar se todos os serviços estão iniciados:
ps -ef | grep java
Para Windows, o procedimento é o mesmo - trocando apenas os diretórios e o comando (WASService.exe)
[root@localhost bin]# pwd
/opt/IBM/WebSphere/AppServer-7.0/bin
Deployment Manager
[root@localhost bin]# ./wasservice.sh -add dmgr -serverName dmgr -profilePath /opt/IBM/WebSphere/AppServer-7.0/profiles/Dmgr01/ -user_id [
Node Agent
[root@localhost bin]# ./wasservice.sh -add nodeagent -serverName nodeagent -profilePath /opt/IBM/WebSphere/AppServer-7.0/profiles/AppSrv01/ -user_id [usuario]
Server (server1)
[root@localhost bin]# ./wasservice.sh -add server1 -serverName server1 -profilePath /opt/IBM/WebSphere/AppServer-7.0/profiles/AppSrv01/ -user_id
Servers
Outro modo de deixar os servidores de aplicativos iniciarem automáticamente é trocar o parâmetro "Node restart state" para "RUNNING". Desse modo, quando iniciar o nodeagent, o server também será iniciado automáticamente. Basta criar o serviço de inicialização para o nodeagent.
Para alterar esse valor vá em "Application servers --> server1 --> Monitoring Policy", onde "serve1" é o nome do servidor de aplicativo. Altere o valor para todos os servers que deseja iniciar automáticamente quando o nodeagent for iniciado.
Reiniciar o Servidor e verificar se todos os serviços estão iniciados:
ps -ef | grep java
Para Windows, o procedimento é o mesmo - trocando apenas os diretórios e o comando (WASService.exe)
Marcadores:
application,
linux,
server,
Service,
websphere
terça-feira, 21 de setembro de 2010
CVS, error writing to lock file
Hoje fui realizar alguns commits no CVS e, de repente, comecei a obter a mensagem "error writing to lock file"

Após verificar as permissões do CVS, percebi que o problema estava sendo ocasionado por falta de espaço em disco.
Após liberar o espaço em disco, alguns arquivos ficaram travados no processo anterior (quando ocorreu "error writing to lock file") e ocorreu a seguinte mensagem:

Os arquivos travados tiveram que ser excluídos fisicamente no diretório do servidor CVS para resolver o problema "cannot lock".
Agora está tudo OK.

Após verificar as permissões do CVS, percebi que o problema estava sendo ocasionado por falta de espaço em disco.
Após liberar o espaço em disco, alguns arquivos ficaram travados no processo anterior (quando ocorreu "error writing to lock file") e ocorreu a seguinte mensagem:

Os arquivos travados tiveram que ser excluídos fisicamente no diretório do servidor CVS para resolver o problema "cannot lock".
Agora está tudo OK.
Assinar:
Postagens (Atom)




