Mygale1978 - 2004-09-28

Bonjour,

Je parviens  me connecter en local(client lourd et web)  compiere.
Par contre,je ne parviens pas  me connecter  distance via le client lourd.
J'ai suivi les indications sur le site pour la configuration d'oracle et de compiere dans le cas d'une connection via  firewall et j'ai mme essay l'une des solutions proposes sur le forum mais en vain.

La connection doit s'effectuer via un routeur/firewall broadband.
Voici un descriptif de ma configuration:

la db et le serveur d'application tournent sur le mme poste.

j'ai ouvert les ports 1630,1521 et 1099 au niveau du routeur. Les rgles du firewall gnrs paraissent correctes  savoir autoriser les connections en provenance de l'extrieur vers le serveur compiere via les ports indiqus ci-dessus.

au niveau d'oracle:

voici la configuration du tsnames.ora

COMPIERE =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1630))
    )
    (SOURCE_ROUTE = yes)
    (CONNECT_DATA =
      (SERVICE_NAME = compiere.compiere.org)
    )
  )
192.168.1.100 tant le serveur db et compiere.

configuration du fichier cman.ora:

cman = (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.100)(PORT=1630)(QUEUESIZE=32))
     

# The cman administrator

cman_admin = (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.100)(PORT=1650))

# cman's configurable params
#         MAXIMUM_RELAYS               defaults to 128
#         LOG_LEVEL                    defaults to 0
#         TRACING                      defaults to no
#         TRACE_DIRECTORY              defaults to .../network/trace
#         RELAY_STATISTICS             defaults to no
#         SHOW_TNS_INFO                defaults to no
#         USE_ASYNC_CALL               defaults to yes
#         AUTHENTICATION_LEVEL         defaults to 0
#         MAXIMUM_CONNECT_DATA         defaults to 1024
#         ANSWER_TIMEOUT               defaults to 0
#         MAX_FREELIST_BUFFERS         defaults to 2048
#

cman_profile = (parameter_list=
            (MAXIMUM_RELAYS=1024)
            (LOG_LEVEL=1)
            (TRACING=no)
            (RELAY_STATISTICS=yes)
            (SHOW_TNS_INFO=yes)
            (USE_ASYNC_CALL=yes)
            (AUTHENTICATION_LEVEL=0)
            (REMOTE_ADMIN=FALSE)
            (ANSWER_TIMEOUT=30)
        )

#
# cman is used as a firewall proxy on TCP, if "cman_rules" exist

cman_rules = (rule_list=
            (rule=(src=*)(dst=192.168.1.100)(srv=compiere.compiere.org)(act=accept))
        )

Le NAT est bien videmment activ au niveau du routeur.

Les informations mises au niveau du client lourd
lors de la tentative de connection  distance sont les suivantes:

hte de l'application: ip publique
port de l'application: 1099

hte de base de donnes : ip publique
port de base de donnes :1521
nom db
login/mot de passe

via firewall est coch
hte du firewall: ip publique
port de firewall: 1630

Test de l'application donne l'erreur suivante:

CConection.setAppsServerInfo - jnp://ip publique:1099
- javax.naming.CommunicationException [Root exception is java.rmi.ConnectExcept
ion: Connection refused to host: 192.168.1.100; nested exception is:
        java.net.ConnectException: Connection refused: connect]
- {java.naming.provider.url=jnp://ip publique:1099, java.naming.factory.init
ial=org.jnp.interfaces.NamingContextFactory, jnp.discoveryTimeout=5000, jnp.time
out=5000, java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces, jnp.
sotimeout=5000}

Test de la db donne l'erreur suivante:
CConection.getConnection - jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(SOURCE_
ROUTE=YES)(ADDRESS=(PROTOCOL=TCP)(HOST=ip publique)(PORT=1630))(ADDRESS=(PROT
OCOL=TCP)(HOST=ip publique)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=compiere)
)) - java.sql.SQLException: Exception d'E/S: Connection refused

Voil j'espre avoir t clair.

Si qqun pouvait m'clairer  ce sujet ce serait sympa.

Merci d'avance.