quinta-feira, 10 de novembro de 2016

IE: SCRIPT7002: XMLHttpRequest: Erro de Rede 0x2f76, Não foi possível concluir a operação. Erro: 00002f76

Numa aplicação usando AngularJS me deparei com um erro muito estranho no Internet Explorer o  SCRIPT7002: XMLHttpRequest: Erro de Rede 0x2f76, Não foi possível concluir a operação. Erro: 00002f76, nos demais navegadores funcionava ok.

Analisando verifiquei que só acontecia quando retornar o HTTP Status Code 302 - Found, troquei para para 200 - OK e funcionou corretamente.

Coisas do IE.




IE: SCRIPT7002: XMLHttpRequest: Erro de Rede 0x2f76, Não foi possível concluir a operação. Erro: 00002f76

Numa aplicação usando AngularJS me deparei com um erro muito estranho no Internet Explorer o SCRIPT7002: XMLHttpRequest: Erro de Rede 0x2f76, Não foi possível concluir a operação. Erro: 00002f76, nos demais navegadores funcionava ok.

Analisando verifiquei que só acontecia quando retornar o HTTP Status Code 302 - Found, troquei para para 200 - OK e funcionou corretamente.

Coisas do IE.




sábado, 15 de outubro de 2016

Erro ao criar DataSource PostgreSQL em Domain Admin Console do GlassFish

Num projeto usando GlassFish preciso usar um recurso JDBC para acessar o PostgreSQL, então na console em Resources > JDBC > JDBC Resources ao dar new já recebo um class java.lang.RuntimeException, e na opção JDBC Connection Pools a primeira tela abre mas ao ir para a segunda para configurar o acesso ao banco recebo java.lang.IllegalStateException: getOutputStream() has already been called for this response.

Na console então peguei o JDBC Connection Pools > SamplePool e alterei com os dados de minha conexão, um ponto importante é trocar o Datasource Classname para org.postgresql.ds.PGPoolingDataSource. Como a console não permite alterar o nome fui direto no arquivo [diretório do GlassFish]/glassfish/domains/domain1/config/domain.xml.

Também foi necessário colocar o .jar do PostgreSQL em [diretório do GlassFish]/glassfish/domains/domain1/lib.

Isto acontece na versão 4.1.1 na 4.1 isso não acontece.

Erro ao criar DataSource PostgreSQL em Domain Admin Console do GlassFish

Num projeto usando GlassFish preciso usar um recurso JDBC para acessar o PostgreSQL, então na console em Resources > JDBC > JDBC Resources ao dar new já recebo um class java.lang.RuntimeException, e na opção JDBC Connection Pools a primeira tela abre mas ao ir para a segunda para configurar o acesso ao banco recebo java.lang.IllegalStateException: getOutputStream() has already been called for this response.

Na console então peguei o JDBC Connection Pools > SamplePool e alterei com os dados de minha conexão, um ponto importante é trocar o Datasource Classname para org.postgresql.ds.PGPoolingDataSource. Como a console não permite alterar o nome fui direto no arquivo [diretório do GlassFish]/glassfish/domains/domain1/config/domain.xml.

Tombém foi necessário colocar o .jar do PostgreSQL em [diretório do GlassFish]/glassfish/domains/domain1/lib.

Erro ao criar DataSource PostgreSQL em Domain Admin Console do GlassFish

Num projeto usando GlassFish preciso usar um recurso JDBC para acessar o PostgreSQL, então na console em Resources > JDBC > JDBC Resources ao dar new já recebo um class java.lang.RuntimeException, e na opção JDBC Connection Pools a primeira tela abre mas ao ir para a segunda para configurar o acesso ao banco recebo java.lang.IllegalStateException: getOutputStream() has already been called for this response.

Na console então peguei o JDBC Connection Pools > SamplePool e alterei com os dados de minha conexão, um ponto importante é trocar o Datasource Classname para org.postgresql.ds.PGPoolingDataSource. Como a console não permite alterar o nome fui direto no arquivo [diretório do GlassFish]/glassfish/domains/domain1/config/domain.xml.

Tombém foi necessário colocar o .jar do PostgreSQL em [diretório do GlassFish]/glassfish/domains/domain1/lib.

sexta-feira, 9 de setembro de 2016

Layout no Google Chrome

Numa aplicação usando AngularJS e Bootstrap, tenho no topo o menu e no corpo da página os dados do item selecionado no menu que normalmente são botões de ação (Inserir, Editar, etc) e filtros e abaixo a lista com os itens do cadastro.

Usei o margin-top, para posicionar a barra de ações e filtros entre o menu e a lista de itens do cadastro de forma fixa (position: fixed). No firefox funciona ok, mas para minha surpresa no Google Chrome tenho fica atrás do menu.

Entre algumas soluções encontrei o margin-top específico para Google Chrome nesse link

Também existe a opção de algo como:
/* Chrome 22-28 */
@media screen and(-webkit-min-device-pixel-ratio:0) {
    .cssclass {
        margin-top: 170px;
    }
}

/* Chrome 28 and newer */
@supports (-webkit-appearance:none) {
    .cssclass {
        margin-top: 170px;
    }
}

Infelizmente não guardei o link desse para colocar os créditos aqui.

Mas por querer usar sempre o padrão não gostei muito das alternativas, tentei o padding-top mas no meu caso não encontrei um valor que ficasse bom para todos os navegadores.

O top, diferentemente do padding-top achei um valor que ficou bom para todos os navegadores mesmo ficando levemente diferente entre o Google Chrome e os outros navegadores.


sábado, 9 de julho de 2016

Gateway de pagamento on-line

Fiz um gateway de pagamento on-line com cartão de crédito para meu cliente Lexsis, produto que está em produção desde 2014.

De fácil uso via requisições HTTPS / RESTful pode ser usado por qualquer aplicação em qualquer plataforma.

Caso precisem desse recurso em suas apps ou sites só entrar em contato com a Lexsis.

Alguns clientes que estão usando:
E também hotéis e pousadas que usam via portal de reservas on-line que fiz com AngularJS e Bootstrap: