Ho scoperto che PropertyEditorManager
registra/trova editor per ThreadGroupContext
in base, non per registro globale come precedente a Java7.PropertyEditors Java7 registrati tramite ThreadGroupContext
E Java7 ogni volta crea un nuovo ThreadGroupContext per un nuovo ThreadGroup
. Così PropertyEditorFinder (che registra/trova effettivamente gli editor) è di nuovo nuovo.
Java utilizza editor predefiniti per alcune classi (Byte
, Long
, ecc) e li registra in PropertyEditorFinder
a ctor
). Diciamo che voglio registrare il mio PropertyEditor
per alcune classi predefinite (ad esempio Long). È facile da fare in Java6, ma in Java7, ogni volta che i thread vengono creati all'interno del nuovo ThreadGroup
ho perso il mio editor.
Quindi, per favore, potrebbe dirmi c'è qualche soluzione per gestire in modo piacevole quali editor sono stati creati per un nuovo ThreadGroup
in Java7? Se affrontate qualche problema e come lo superate?
P.S. Credo che dovrei scusarmi per il mio inglese =)
P.P.S. ThreadGroupContext
sostituisce AppContext
. E speravo che l'implementazione dei contesti di creazione sarebbe stata simile: entrambi utilizzano la mappatura tra ThreadGroup
in contesto (AppContext
in java 6, ThreadGroupContext
in java 7). E java 6 utilizza lo stesso AppContext
per il nuovo ThreadGroup
come per il genitore. In altre parole, AppContext
viene utilizzato per l'intero albero ThreadGroup
in un jvm. Ma sfortunatamente la creazione di ThreadGroupContext
è diversa: è semplicemente un nuovo contesto per un nuovo gruppo. Quindi la domanda viene automaticamente risolta se un giorno ThreadGroupContext
utilizzerà la stessa tecnica di creazione.
Ho lo stesso problema con PropertyEditorManager e non ho trovato la soluzione ancora.. – Vadeg