PHP rodando em servidor JAVA com QUERCUS

8 respostas
A

Estou com um problema durante a execução de projeto PHP em um ambiente JAVA utilizando o QUERCUS esta ocorrendo as seguintes situações:
1. Tenho um projeto PHP que funciona normalmente no XAMPP, acessando POSTGRES, banco de dados LATIN1, via ODBC.
2. Utilizando NetBeans 6.9.1 instalei o quercus e o projeto PHP.
3. O projeto JAVA acessa o mesmo banco de dados do PHP (postgres) e exibe o conteúdo dos campos corretamente.
4. Quando o JSP chama a pagina PHP, esta é executada normalmente, porem o conteúdo do banco (postgres) não é exibido corretamente (acentuações e caracteres do LATIN1).
5. É como se no Java o acesso feito via JDBC esteja configurado para acessar e reconheçer o POSTGRES, com banco LATIN1, porem quando executa página PHP acessando o banco via ODBC alguma configuração esteja incompatível.

Alguem pode ajudar?

8 Respostas

A

Alguem dispoe de tempo para pesquizar o problema com retorno financeiro?

O

Você esta utilizando Tomcat ou Jetty?

Como você esta configurando o resource no context.xml?

Outra coisa, se você fizer:

echo 'Execução';

O resultado vem correto? Precisamos saber se o problema esta na configuração do JDBC ou do Quercus.

A

Estou usando TOMCAT 6

meta-inf
context.xml

<?xml version="1.0" encoding="iso-8859-1"?>
<servlet>
    <servlet-name>quercusServlet</servlet-name>
    <servlet-class>com.caucho.quercus.servlet.QuercusServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>quercusServlet</servlet-name>
    <url-pattern>*.php</url-pattern>
</servlet-mapping>
<context-param>
    <param-name>ini-file</param-name>
    <param-value>WEB-INF/php5.ini</param-value>
</context-param>
script-enconding ISO-8859-1
<!-- <filter>
    <filter-name>projeto Filter</filter-name>
    <filter-class>br.projeto.filtro.projetoFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>projeto Filter</filter-name>
    <url-pattern>/projeto</url-pattern>
</filter-mapping>-->
<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>

resin-web

<?xml version="1.0" encoding="UTF-8"?> quercusServlet com.caucho.quercus.servlet.QuercusServlet quercusServlet *.php ISO-8859-1 iso-8859-1 iso-8859-1 WEB-INF/php.ini true
A

No java toda execução de html ele exibe corretamente.

Quando executa sql via java e jdbc tambem exibe o conteudo corretamente.

O problema é com o projeto PHP ja existente, onde o seu sql utiliza ODBC.

Quando executa fora do java, ou seja o PHP no APACHE via ODBC, ele apresenta os campos corretamente.

Quando executa no ambiente java, com a pagina PHP chamada por uma JSP, os campos não saem corretos (acentuação, etc.)

Como o ambiente java/quercus entendo o sql executado no PHP associado com ODBC ??

   Acho que o problema esta por ai, pois a aplicação PHP ja existe, utilizando ODBC.
O

Bom vamos la.

Tenta mudar seu resource para:

<Resource 
	auth="Container" 
	name="jdbc/postgresql" 
	type="javax.sql.DataSource" 
	maxActive="4" 
	maxIdle="2" 
	maxWait="5000" 
	driverClassName="org.postgresql.Driver" 
	username="postgres"
	password="xxx" 
	url="jdbc:postgresql://localhost:5432/projeto02?charSet=LATIN1"/>
A

Olá Caio,

Não resolveu, continua sem identificar LATIN1.

A

Ele deve usar as configuraçções do ODBC, pois todo SQL do php esta utlilizando aS INFORMAÇÕES do ODBC.

A

Estou em ambiente windows com tomcat, onde a execução apresenta erro na exibição de atributos do banco com acentuação.

Quando executa na ambiente windows e apache funciona normalmente

Voce tem ideia de outro lugar que podemos fazer configuração no quercus/tomcat ?

Criado 14 de maio de 2011
Ultima resposta 16 de mai. de 2011
Respostas 8
Participantes 2