9. Changements dans jbossws-spi et jbossws-cxf

Les changements apportés à cette version sont supposés améliorer la stabilité, empêcher les problèmes de concurrence et garantir la sécurité des chaînes si nécessaire.
Pour cela, certaines classes SPI ont été factorisées à nouveau de manière non rétroactive au niveau compatibilité.
La plupart des utilisateurs ne seront pas affectés par les changements, car les classes concernées sont conçues pour composer l'interface d'intégration entre la pile de webservice et le conteneur de serveur d'applications, et non pas pour l'utilisation par l'utilisateur final
Les utilisateurs finaux doivent s'attendre à des changements de migration dans leur code uniquement s'ils utilisent programmatiquement les interfaces org.jboss.wsf.spi.metadata.config.CommonConfig et org.jboss.wsf.spi.management.ServerConfig ou leurs implémentateurs.
Vous trouverez ci-dessous un résumé des changements possibles qui puissent impacter les utilisateurs programmatiquement, sur la base des modifications de classes SPI  :
La ConfigCommune est maintenant immutable. Ainsi, les méthodes suivantes ont été supprimées :
  • public void setPostHandlerChains(List<UnifiedHandlerChainMetaData> postHandlerChain);
  • public void setPreHandlerChains(List<UnifiedHandlerChainMetaData> preHandlerChains);
  • public void setConfigName(String configName);
  • public void setFeature(Feature feature, boolean enabled);
  • public void setProperty(String name, String value);
La ConfigServeur a un nouveau mécanisme pour enregistrer et dés-enregistrer les instances de ConfigCommunes (lors de l'amorçage du conteneur), en évitant an même temps les modification non sécurisées en cours d'exécution. L'utilisateur doit savoir que les méthodes suivantes ont été dépréciées.

Méthodes de ConfigServeur dépréciées

  • public List<ClientConfig> getClientConfigs();
  • public List<EndpointConfig> getEndpointConfigs();

Nouvelles méthodes de ConfigServeur

  • public ClientConfig getClientConfig(String name);
  • public EndpointConfig getEndpointConfig(String name);

Autres changements n'affectant pas les utilisateurs normaux

  • Les constructeurs de org.jboss.wsf.spi.metadata.webservices.WebservicesMetaData, org.jboss.wsf.spi.metadata.webservices.WebserviceDescriptionMetaData et org.jboss.wsf.spi.metadata.webservices.PortComponentMetaData ont changé en tant qu'instances de ces classes et ces classes sont maintenant immutables; cela a son importance quand on utilise org.jboss.wsf.spi.publish.EndpointPublisher qui est (optionnellement) basé sur les instances de WebservicesMetaData.