You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Bjorn Harvold (JIRA)" <ji...@apache.org> on 2008/08/14 03:59:44 UTC
[jira] Closed: (CXF-1746) Multiple published services all reference
the first exported spring web service
[ https://issues.apache.org/jira/browse/CXF-1746?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Bjorn Harvold closed CXF-1746.
------------------------------
Resolution: Won't Fix
> Multiple published services all reference the first exported spring web service
> --------------------------------------------------------------------------------
>
> Key: CXF-1746
> URL: https://issues.apache.org/jira/browse/CXF-1746
> Project: CXF
> Issue Type: Bug
> Components: Configuration
> Affects Versions: 2.1.1
> Environment: Mac OSX, 10.5.4, JDK 1.6.0_5, Spring 2.5.5, CXF 2.1.1
> Reporter: Bjorn Harvold
>
> Hi,
> I've been working with CXF since the incubator stage. Before that I was an xfire user. My multiple web services have been successfully published on earlier version of CXF. I THINK this issue is associated with v2.1.1.
> Here are my services configured in spring:
> <!-- ============================== WEB SERVICE END POINT============================== -->
> <jaxws:endpoint id="cxf_UserWebService"
> implementor="#userWebService"
> address="/UserWebService">
> <jaxws:serviceFactory>
> <ref bean="serviceFactory"/>
> </jaxws:serviceFactory>
> </jaxws:endpoint>
> <jaxws:endpoint id="cxf_ReferenceDataWebService"
> implementor="#referenceDataWebService"
> address="/ReferenceDataWebService">
> <jaxws:serviceFactory>
> <ref bean="serviceFactory"/>
> </jaxws:serviceFactory>
> </jaxws:endpoint>
> <!-- ============================== WEB SERVICE END POINT============================== -->
> <!-- ============================== WEB SERVICE ============================== -->
> <bean id="userWebService" class="com.hxcel.globalhealth.web.ws.impl.UserWebServiceImpl" parent="abstractWebService">
> <property name="resourceBundle" value="errors"/>
> <property name="description" value="${application.user.description}"/>
> <property name="name" value="${application.user.name}"/>
> <property name="shortName" value="${application.user.name.short}"/>
> </bean>
> <bean id="referenceDataWebService" class="com.hxcel.globalhealth.web.ws.impl.ReferenceDataWebServiceImpl" parent="abstractWebService">
> <property name="description" value="${application.phr.description}"/>
> <property name="name" value="${application.referencedata.name}"/>
> <property name="shortName" value="${application.referencedata.name.short}"/>
> </bean>
> <!-- ============================== WEB SERVICE ============================== -->
> Here are the interfaces:
> @WebService
> public interface UserWebService {
> @WebMethod
> @WebResult(name = "User")
> UserDto getUser(@WebParam(name="id") String id) throws Fault;
> @WebMethod
> UserDto saveNewUser(@WebParam(name = "dto")UserDto dto) throws Fault;
> @WebMethod
> @WebResult(name = "isUsernameTaken")
> Boolean isUsernameTaken(@WebParam(name="username") String username) throws Fault;
> @WebMethod
> @WebResult(name = "isUserUnique")
> Boolean isUserUnique(@WebParam(name = "id") String id, @WebParam(name="username") String username) throws Fault;
> @WebMethod
> @WebResult(name = "User")
> UserDto login(@WebParam(name = "username") String username, @WebParam(name="password") String password) throws Fault;
> }
> @WebService
> public interface ReferenceDataWebService {
> @WebMethod
> @WebResult(name = "AdvanceDirectiveType")
> AdvanceDirectiveTypeCd[] getAdvanceDirectiveTypes();
> @WebMethod
> @WebResult(name = "AllergyReactionType")
> AllergyReactionTypeCd[] getAllergyReactionTypes();
> @WebMethod
> @WebResult(name = "AllergyType")
> AllergyTypeCd[] getAllergyTypes();
> @WebMethod
> @WebResult(name = "AlternativeTreatmentType")
> AlternativeTreatmentTypeCd[] getAlternativeTreatmentTypes();
> @WebMethod
> @WebResult(name = "BloodType")
> BloodTypeCd[] getBloodTypes();
> @WebMethod
> @WebResult(name = "CaseStatus")
> EmrStatusCd[] getEmrStatuses();
> @WebMethod
> @WebResult(name = "ClientStatus")
> ClientStatusCd[] getClientStatuses();
> @WebMethod
> @WebResult(name = "ContactType")
> ContactTypeCd[] getContactTypes();
> @WebMethod
> @WebResult(name = "Country")
> CountryCd.code[] getCountries() throws Fault;
> @WebMethod
> @WebResult(name = "Country")
> CountryCd getCountry(String code) throws Fault;
> @WebMethod
> @WebResult(name = "CreditcardType")
> CreditcardTypeCd[] getCreditcardTypes();
> @WebMethod
> @WebResult(name = "DentalExamReasonType")
> DentalExamReasonTypeCd[] getDentalExamReasonTypes();
> @WebMethod
> @WebResult(name = "DiagnoserType")
> DiagnoserTypeCd[] getDiagnoserTypes();
> @WebMethod
> @WebResult(name = "EmailType")
> EmailTypeCd[] getEmailTypes();
> @WebMethod
> @WebResult(name = "FrequencyType")
> FrequencyTypeCd[] getFrequencyTypes();
> @WebMethod
> @WebResult(name = "InstantMessageType")
> InstantMessageTypeCd[] getInstantMessageTypes();
> @WebMethod
> @WebResult(name = "ImmunizationType")
> ImmunizationTypeCd[] getImmunizationTypes();
> @WebMethod
> @WebResult(name = "Language")
> LanguageCd[] getLanguages();
> @WebMethod
> @WebResult(name = "LocationType")
> LocationTypeCd[] getLocationTypes();
> @WebMethod
> @WebResult(name = "MaritalStatus")
> MaritalStatusCd[] getMaritalStatuses();
> @WebMethod
> @WebResult(name = "MedicalConditionType")
> MedicalConditionTypeCd[] getMedicalConditionTypes();
> @WebMethod
> @WebResult(name = "MedicationFrequencie")
> MedicationFrequencyCd[] getMedicationFrequencies();
> @WebMethod
> @WebResult(name = "MedicationType")
> MedicationTypeCd[] getMedicationTypes();
> @WebMethod
> @WebResult(name = "NewsChannel")
> NewsChannelCd[] getNewsChannels();
> @WebMethod
> @WebResult(name = "PhoneType")
> PhoneTypeCd[] getPhoneTypes();
> @WebMethod
> @WebResult(name = "ProfessionalClientStatus")
> RelationshipStatusCd[] getRelationshipStatuses();
> @WebMethod
> @WebResult(name = "ProfessionalStatus")
> ProfessionalStatusCd[] getProfessionalStatuses();
> @WebMethod
> @WebResult(name = "ProfessionalType")
> ProfessionalTypeCd[] getProfessionalTypes();
> @WebMethod
> @WebResult(name = "WaitinglistPriority")
> WaitinglistPriorityCd[] getWaitinglistPriorities();
> @WebMethod
> @WebResult(name = "Profession")
> ProfessionCd[] getProfessions();
> @WebMethod
> @WebResult(name = "Race")
> RaceCd[] getRaces();
> @WebMethod
> @WebResult(name = "RatingType")
> RatingTypeCd[] getRatingTypes();
> @WebMethod
> @WebResult(name = "RecordType")
> RecordTypeCd[] getRecordTypes();
> @WebMethod
> @WebResult(name = "RelativeConditionType")
> RelativeConditionTypeCd[] getRelativeConditionTypes();
> @WebMethod
> @WebResult(name = "RelativeType")
> RelativeTypeCd[] getRelativeTypes();
> @WebMethod
> @WebResult(name = "Religion")
> ReligionCd[] getReligions();
> @WebMethod
> @WebResult(name = "Salutation")
> SalutationCd[] getSalutations();
> @WebMethod
> @WebResult(name = "Sex")
> SexCd[] getSexes();
> @WebMethod
> @WebResult(name = "SpecialtyType")
> SpecialtyTypeCd[] getSpecialtyTypes();
> @WebMethod
> @WebResult(name = "SurgeryType")
> SurgeryTypeCd[] getSurgeryTypes();
> @WebMethod
> @WebResult(name = "TreatmentType")
> TreatmentTypeCd[] getTreatmentTypes();
> @WebMethod
> @WebResult(name = "UserStatus")
> UserStatusCd[] getUserStatuses();
> @WebMethod
> @WebResult(name = "VisionExamReasonType")
> VisionExamReasonTypeCd[] getVisionExamReasonTypes();
> @WebMethod
> @WebResult(name = "VisionNonPrescriptionGlassesType")
> VisionNonPrescriptionGlassesTypeCd[] getVisionNonPrescriptionGlassesTypes();
> @WebMethod
> @WebResult(name = "VisionPrescriptionGlassesType")
> VisionPrescriptionGlassesTypeCd[] getVisionPrescriptionGlassesTypes();
> @WebMethod
> @WebResult(name = "VisionContactLensType")
> VisionContactLensTypeCd[] getVisionContactLensTypes();
> }
> They are very different interfaces. Here are the beginnings of the implementations:
> @WebService(serviceName = "UserWebService", endpointInterface = "com.hxcel.globalhealth.web.ws.UserWebService")
> public class UserWebServiceImpl extends AbstractWebService implements UserWebService {}
> @WebService(serviceName = "ReferenceDataWebService", endpointInterface = "com.hxcel.globalhealth.web.ws.ReferenceDataWebService")
> public class ReferenceDataWebServiceImpl extends AbstractWebService implements ReferenceDataWebService {}
> AbstractWebService only has some String accessors.
> These services have worked fine before as I said on CXF v2.0.x.... maybe even 2.1.0.
> When I start up the application and look at my available services I get this:
> Available services:
> UserWebService
> * isUserUnique
> * saveNewUser
> * isUsernameTaken
> * getUser
> * login
> Endpoint address: http://localhost:8080/services/UserWebService
> Wsdl: {http://impl.ws.web.globalhealth.hxcel.com/}UserWebService
> Target namespace: http://impl.ws.web.globalhealth.hxcel.com/
> UserWebService
> * isUserUnique
> * saveNewUser
> * isUsernameTaken
> * getUser
> * login
> Endpoint address: http://localhost:8080/services/ReferenceDataWebService
> Wsdl: {http://impl.ws.web.globalhealth.hxcel.com/}UserWebService
> Target namespace: http://impl.ws.web.globalhealth.hxcel.com/
> The web service I export first will always override all the other web services I have.
> Is this a bug or am I smoking the wrong end of the pipe again!?
> Cheers
> bjorn
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.