Je ne suis pas très familier avec Tomcat, mais mon équipe a hérité d'un projet complexe qui tourne autour d'une servlet Java hébergée dans Tomcat sur de nombreux serveurs. Un logiciel de gestion de configuration personnalisé est utilisé pour écrire le fichier server.xml et diverses ressources (pools de connexions, beans, variables de serveur, etc.) écrites dans server.xml configurent le servlet. Tout cela est bien et bon.Caractères génériques pour les ressources dans un contexte Tomcat Servlet.xml
Cependant, les noms de certaines ressources ne sont pas connus à l'avance. Par exemple, la servlet peut avoir besoin d'accéder à un nombre quelconque d '«anonymisateurs» configurés par l'opérateur. Chaque anonymizer a un nom unique associé. Nous créons et configurer chaque Anonymizer en utilisant JavaBeans similaires à ce qui suit:
<Resource
name="bean/Anonymizer_toon"
type="com.company.tomcatutil.AnonymizerBean"
factory="org.apache.naming.factory.BeanFactory"
className="teAnonymizer"
databaseId="50"
/>
<Resource
name="bean/Anonymizer_default"
type="com.company.tomcatutil.AnonymizerBean"
factory="org.apache.naming.factory.BeanFactory"
className="teAnonymizer"
databaseId="54"
/>
Cependant, cela semble nous obliger à avoir des entrées explicites dans le fichier context.xml du Servlet pour chacun un chaque nom possible des ressources à l'avance. Je voudrais remplacer les entrées context.xml explicites par des caractères génériques, ou savoir s'il existe une meilleure solution à ce type de problème.
Actuellement:
<ResourceLink name="bean/Anonymizer_default"
global="bean/Anonymizer_default"
type="com.company.tomcatutil.AnonymizerBean"/>
<ResourceLink name="bean/Anonymizer_toon"
global="bean/Anonymizer_toon"
type="com.company.tomcatutil.AnonymizerBean"/>
remplacé par quelque chose comme:
<ResourceLink name="bean/Anonymizer_*"
global="bean/Anonymizer_*"
type="com.company.tomcatutil.AnonymizerBean"/>
Cependant, je n'ai pas été en mesure de déterminer si cela est possible ou ce que la syntaxe correcte peut-être. Quelqu'un peut-il faire des suggestions sur de meilleures façons de gérer cela?
Cela répond à une partie de la question. Il semble qu'il n'y ait aucun moyen de définir un ResourceLink avec n'importe quelle forme de wildcard de nom. Peut-être pourrions-nous essayer de résoudre ce problème en regroupant les ressources d'une manière ou d'une autre, afin que tous les anonymes passent par context.xml comme une seule ressource. – DonGar