Grails Cxf プラグインを使用して jaxws として公開するサービス クラスがあります。私のサービスでは、Web サービスで使用する別のサービス クラスを注入する必要があります。サービス フィールドを public にすると、以下のように不要なサービス メソッドが生成されます。
retrieveLastRecordUpdateDate
setPricingContractService
retrieveRecordsUpdatedFromDate
retrieveAllRecordsByInsurance
getPricingContractService
フィールドをプライベートにすると、サービス クラスを注入できません。サービスを注入し、Web サービスとして公開しないようにするにはどうすればよいですか? 以下の簡略化されたコード:
class PricingContractWebService {
static expose = EndpointType.JAX_WS
def pricingContractService // private?
@WebMethod( operationName="retrieveAllRecordsByInsurance" )
@WebResult( name="pricingContractList" )
@XmlElement(name="healthCareCompany", required=true)
List<PricingContractDTO> retrieveAllRecordsByInsurance(@WebParam(partName = "HealthCareCompany", name = "healthCareCompany", ) final HealthCareCompany healthCareCompany) {
def pricingContractDTOList = []
pricingContractDTOList
}
@WebMethod( operationName="retrieveLastRecordUpdateDate" )
@WebResult( name="lastUpdateDate" )
Date retrieveLastRecordUpdateDate() {
}
@WebMethod( operationName="retrieveRecordsUpdatedFromDate" )
@WebResult( name="pricingContractList" )
@XmlElement(name="updateDate", required=true)
List<PricingContractDTO> retrieveRecordsUpdatedFromDate(@WebParam(name = "updateDate") final Date date) {
def pricingContractDTOList = []
pricingContractDTOList
}
}