eCandidat (esup-opi)

Arborescence des pages

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Commentaire: Migrated to Confluence 5.3

...

Voici

...

une

...

liste

...

des

...

exceptions

...

fréquemment

...

rencontrés

...

lors

...

de

...

l'installation

...

de

...

l'application

...

eCandidat.

...

Elles

...

sont

...

souvent

...

...

à

...

une

...

erreur

...

de

...

configuration.

...

Sommaire

VersionException:

...

The

...

database

...

is

...

too

...

old

...

(x.x.x),

...

please

...

run

...

'ant

...

upgrade'

...

Vous

...

venez

...

d'installer

...

la

...

nouvelle

...

version

...

de

...

eCandidat

...

mais

...

vous

...

n'avez

...

pas

...

exécuté

...

la

...

target

...

ant

...

upgrade.

...

Une

...

fois

...

celle-ci

...

exécutée,

...

vérifiez

...

que

...

la

...

table

...

B_VERS_MANA

...

si

...

la

...

valeur

...

est

...

à

...

jour.

...

ObjectNotFoundException:

...

No

...

LDAP

...

entry

...

found

...

for

...

entity

...

[*********

...

]

...

Lors

...

de

...

l'exécution

...

de

...

la

...

target

...

init-data,

...

il

...

est

...

possible

...

d'avoir

...

cette

...

exception

...

si

...

la

...

propriété

...

init.firstAdministratorId

...

soit

...

mal

...

initialisé.

...

Il

...

faut

...

s'assurer

...

que

...

la

...

valeur

...

saisie

...

corresponde

...

bien

...

à

...

l'id

...

au

...

sens

...

LDAP.

...

En

...

effet,

...

l'init-data

...

va

...

interroger

...

LDAP

...

pour

...

récupérer

...

la

...

fiche

...

sur

...

l'id

...

passé

...

et

...

ainsi

...

initialiser

...

le

...

premier

...

compte

...

administrateur

...

dans

...

l'application.

...

ObjectNotFoundException avec un code postal inexistant

L'exception

...

envoyée

...

par

...

l'application

...

contient

...

la

...

ligne

...

suivante

...

:

{
Bloc de code
}
caused by: org.esupportail.commons.exceptions.ObjectNotFoundException: Ce code postal ( 97610 ) n'existe pas dans la base de données APOGEE
{code}

Cette

...

exception

...

est

...

générée

...

par

...

l'application

...

lorsque

...

le

...

webservice

...

Apogée

...

remonte

...

une

...

WebException

...

du

...

style

...

technical.data.nullretrieve.commune.

...

En

...

vérifiant

...

dans

...

le

...

référentiel

...

Apogée,

...

si

...

le

...

code

...

postal

...

n'existe

...

pas,

...

il

...

suffit

...

de

...

mettre

...

à

...

jour.

...

Sinon

...

cela

...

signifie

...

que

...

le

...

webservice

...

s'est

...

planté

...

pendant

...

un

...

cours

...

instant

...

en

...

générant

...

une

...

erreur

...

à

...

l'appel

...

de

...

la

...

méthode.

...

DownloadException:

...

data

...

is

...

null

...

Il

...

s'agit

...

...

d'un

...

"replay"

...

de

...

l'url

...

de

...

download

...

d'un

...

dossier.

...

En

...

effet,

...

lorsque

...

le

...

candidat

...

télécharge

...

son

...

dossier,

...

l'application

...

va

...

jouer

...

une

...

URL

...

du

...

type

...

https://_url_de_l'appli_?downloadId=****\*

...

(https://_url_de_l%27appli_/?downloadId=*****

...

) afin

...

de

...

pouvoir

...

activer

...

le

...

filtre

...

de

...

téléchargement

...

dans

...

le

...

web.xml

...

et

...

ainsi

...

envoyer

...

le

...

flux

...

de

...

données

...

au

...

candidat

...

pour

...

télécharger

...

le

...

dossier.

...


L'id

...

passé

...

en

...

paramètre

...

ne

...

peut

...

être

...

joué

...

2

...

fois

...

car

...

en

...

réalité,

...

on

...

se

...

base

...

sur

...

des

...

données

...

chargées

...

en

...

session

...

pour

...

créer

...

le

...

fichier

...

à

...

télécharger.

...

Il

...

s'avère

...

que

...

pour

...

rejouer

...

volontairement

...

ce

...

genre

...

d'URL,

...

il

...

faut

...

réussir

...

à

...

la

...

capturer

...

par

...

exemple

...

avec

...

un

...

plugin

...

comme

...

TamperData

...

(sur

...

Firefox).

...

Une

...

supposition

...

sur

...

ce

...

sujet

...

serait

...

donc

...

que

...

des

...

personnes

...

malveillantes

...

veulent

...

tester

...

s'il

...

est

...

possible,

...

en

...

changeant

...

ou

...

en

...

rejouant

...

la

...

valeur

...

de

...

l'id,

...

d'obtenir

...

d'autres

...

données

...

que

...

celles

...

initialement

...

obtenues.

...


A

...

Rennes

...

1,

...

nous

...

avons

...

2

...

cas

...

de

...

comportement

...

plus

...

ou

...

moins

...

malveillants

...

:

...


-

...

soit

...

l'URL

...

est

...

rejouée

...

une

...

fois,

...

supposition

...

que

...

leur

...

test

...

est

...

un

...

échec

...

auquel

...

cas

...

ils

...

abandonnent

...

;

...


-

...

soit

...

l'URL

...

est

...

rejouée

...

plusieurs

...

fois.

...

Dans

...

ce

...

cas,

...

on

...

a

...

constaté

...

que

...

l'id

...

peut

...

changer

...

ou

...

non

...

mais

...

le

...

plus

...

important

...

est

...

que

...

l'adresse

...

IP

...

de

...

l'entité

...

malveillante

...

est

...

identique.

...

Les

...

"attaques"

...

sont,

...

dans

...

des

...

cas

...

déjà

...

constatés,

...

répétées

...

toutes

...

les

...

2

...

minutes.

...

La

...

supposition

...

est

...

qu'étant

...

donnée

...

que

...

le

...

comportement

...

provoque

...

une

...

erreur,

...

les

...

personnes

...

malveillantes

...

tentent

...

de

...

surcharger

...

le

...

serveur

...

en

...

saturant

...

les

...

fichiers

...

de

...

logs.

...

Fort

...

heureusement,

...

dans

...

le

...

second

...

cas,

...

nous

...

n'avons

...

jamais

...

planté

...

le

...

serveur

...

car

...

l'application

...

ne

...

conserve

...

qu'un

...

certain

...

nombre

...

de

...

fichiers

...

de

...

logs,

...

on

...

évite

...

donc

...

la

...

surcharge

...

sur

...

ce

...

point.

...


La

...

solution

...

que

...

nous

...

avons

...

parfois

...

envisagée

...

lorsque

...

les

...

attaques

...

étaient

...

en

...

cours,

...

était

...

de

...

blacklister

...

l'adresse

...

IP

...

pendant

...

une

...

journée

...

ou

...

deux.

...


Je

...

l'ai

...

par

...

ailleurs

...

constaté

...

à

...

mon

...

retour

...

de

...

vacances,

...

nous

...

avons

...

eu

...

une

...

attaque

...

de

...

ce

...

genre

...

la

...

semaine

...

dernière

...

et

...

elle

...

a

...

duré

...

6

...

heures,

...

entre

...

19h

...

et

...

1h,

...

cela

...

sans

...

conséquence.

...

MissingResourceException:

...

Can't

...

find

...

resource

...

for

...

bundle

...

java.util.PropertyResourceBundle,

...

key

...

geographieMetier.urlService.ssl

...

Dans

...

le

...

fichier

...

configUrlServices.properties,

...

il

...

manque,

...

entre

...

autres,

...

la

...

clé

...

geographieMetier.urlService.ssl.

...

Il

...

faut

...

donc

...

ajouter

...

les

...

lignes

...

suivantes

...

:

{
Bloc de code
}
administratifMetier.urlService.ssl=false
etudiantMetier.urlService.ssl=false
pedagogiqueMetier.urlService.ssl=false
geographieMetier.urlService.ssl=false
{code}

Elles

...

sont

...

nécessaires

...

pour

...

les

...

librairies

...

des

...

webservices

...

Apogée

...

et

...

lorsqu'on

...

saisit

...

false,

...

cela

...

veut

...

dire

...

qu'on

...

n'utilise

...

pas

...

SSL.

...

De

...

plus,

...

si

...

cela

...

n'est

...

pas

...

fait,

...

je

...

vous

...

conseille

...

aussi

...

d'ajouter

...

les

...

lignes

...

suivantes

...

:

{
Bloc de code
}
WS_SSL_MODE=false
WS_CERTIF_STORE_PATH=
WS_KEY_STORE_PATH=
WS_KEY_PASS=
WS_KEY_TYPE=
{code}

h2. 

ConfigException:

...

la

...

balise

...

boucle

...

n'a

...

pas

...

de

...

fin

...

Si

...

cette

...

erreur

...

intervient

...

dans

...

la

...

classe

...

DynamicMailContentImpl,

...

cela

...

signifie

...

que

...

vous

...

avez

...

modifié

...

de

...

la

...

mauvaise

...

manière

...

un

...

mail

...

dynamique

...

sur

...

la

...

page

...

prévue

...

à

...

cet

...

effet.

...

Dans

...

le

...

cas

...

précis

...

de

...

la

...

balise

...

boucle,

...

il

...

faut

...

rajouter

...

la

...

fin

...

de

...

celle-ci

...

avec

...

ce

...

code

{
Bloc de code
}
${end_boucle}
{code}

Il

...

faut

...

faire

...

très

...

attention

...

aux

...

modifications

...

apportées

...

dans

...

ce

...

module

...

car

...

certaines

...

parties

...

des

...

mails

...

ne

...

doivent

...

pas

...

changer

...

car

...

ce

...

sont

...

des

...

expressions

...

qui

...

sont

...

analysées

...

et

...

traitées

...

par

...

l'application

...

pour

...

donner

...

le

...

rendu

...

final.

MySQLIntegrityConstraintViolationException: Duplicate entry

Si l'erreur porte sur les clés lib_nom_pat_usr ou cod_dep_nai, ce sont des clés générées par Hibernate lors de l'init-data.

Elles correspondent à la clé d'unicité sur les champs lib_nom_pat_usr - lib_pr1_usr - lib_pr2_usr - cod_dep_nai - dat_nai_ind - ville_nai_ind d'un individu dans le mapping. Cette clé évite qu'un candidat crée deux fois un dossier dans l'application.

Le problème vient qu'un Individu au sens de l'application est divisé en base de données sur les deux tables OPI_USER et INDIVIDU.

Il faut donc  :

  • dans la table OPI_USER, supprimer l'index lib_nom_pat_usr
  • dans la table INDIVIDU, supprimer l'index cod_dep_nai