Class ReflectionServiceFactoryBean
- java.lang.Object
-
- org.apache.cxf.service.factory.AbstractServiceFactoryBean
-
- org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean
-
- Direct Known Subclasses:
JaxWsServiceFactoryBean
public class ReflectionServiceFactoryBean extends AbstractServiceFactoryBean
Introspects a class and builds aServicefrom it. If a WSDL URL is specified, a Service model will be directly from the WSDL and then metadata will be filled in from the service class. If no WSDL URL is specified, the Service will be constructed directly from the class structure.
-
-
Field Summary
Fields Modifier and Type Field Description static StringELEMENT_NAMEstatic StringENDPOINT_CLASSstatic StringEXTRA_CLASSstatic StringFORCE_TYPESstatic StringGENERIC_TYPEstatic StringHEADERstatic StringHOLDERstatic StringMETHODstatic StringMETHOD_ANNOTATIONSstatic StringMETHOD_PARAM_ANNOTATIONSstatic StringMODE_INOUTstatic StringMODE_OUTstatic StringPARAM_ANNOTATIONprotected Map<Type,Map<String,Class<?>>>parameterizedTypesstatic StringRAW_CLASSprotected Map<String,String>schemaLocationMappingprotected Class<?>serviceClassprotected ParameterizedTypeserviceTypestatic StringWRAPPERGEN_NEEDEDprotected StringwsdlURL-
Fields inherited from class org.apache.cxf.service.factory.AbstractServiceFactoryBean
dataBindingSet, schemaLocations
-
-
Constructor Summary
Constructors Constructor Description ReflectionServiceFactoryBean()
-
Method Summary
-
Methods inherited from class org.apache.cxf.service.factory.AbstractServiceFactoryBean
getBus, getDataBinding, getDataBinding, getService, getSessionState, initializeDataBindings, sendEvent, setBus, setDataBinding, setService
-
-
-
-
Field Detail
-
ENDPOINT_CLASS
public static final String ENDPOINT_CLASS
- See Also:
- Constant Field Values
-
GENERIC_TYPE
public static final String GENERIC_TYPE
- See Also:
- Constant Field Values
-
RAW_CLASS
public static final String RAW_CLASS
- See Also:
- Constant Field Values
-
WRAPPERGEN_NEEDED
public static final String WRAPPERGEN_NEEDED
- See Also:
- Constant Field Values
-
EXTRA_CLASS
public static final String EXTRA_CLASS
- See Also:
- Constant Field Values
-
MODE_OUT
public static final String MODE_OUT
- See Also:
- Constant Field Values
-
MODE_INOUT
public static final String MODE_INOUT
- See Also:
- Constant Field Values
-
HOLDER
public static final String HOLDER
- See Also:
- Constant Field Values
-
HEADER
public static final String HEADER
- See Also:
- Constant Field Values
-
ELEMENT_NAME
public static final String ELEMENT_NAME
- See Also:
- Constant Field Values
-
METHOD
public static final String METHOD
- See Also:
- Constant Field Values
-
FORCE_TYPES
public static final String FORCE_TYPES
- See Also:
- Constant Field Values
-
METHOD_PARAM_ANNOTATIONS
public static final String METHOD_PARAM_ANNOTATIONS
- See Also:
- Constant Field Values
-
METHOD_ANNOTATIONS
public static final String METHOD_ANNOTATIONS
- See Also:
- Constant Field Values
-
PARAM_ANNOTATION
public static final String PARAM_ANNOTATION
- See Also:
- Constant Field Values
-
wsdlURL
protected String wsdlURL
-
serviceClass
protected Class<?> serviceClass
-
serviceType
protected ParameterizedType serviceType
-
-
Method Detail
-
createDefaultDataBinding
protected DataBinding createDefaultDataBinding()
- Overrides:
createDefaultDataBindingin classAbstractServiceFactoryBean
-
reset
public void reset()
-
create
public Service create()
- Specified by:
createin classAbstractServiceFactoryBean
-
createEndpoints
protected void createEndpoints()
-
updateBindingOperation
public void updateBindingOperation(BindingOperationInfo boi)
-
createEndpoint
public Endpoint createEndpoint(EndpointInfo ei) throws EndpointException
- Throws:
EndpointException
-
initializeServiceConfigurations
protected void initializeServiceConfigurations()
-
setServiceProperties
protected void setServiceProperties()
-
buildServiceFromWSDL
protected void buildServiceFromWSDL(String url)
-
buildServiceFromClass
protected void buildServiceFromClass()
-
hasWrappedMethods
public boolean hasWrappedMethods(InterfaceInfo interfaceInfo)
-
isFromWsdl
protected boolean isFromWsdl()
-
initializeServiceModel
protected void initializeServiceModel()
-
validateServiceModel
public void validateServiceModel()
-
isPopulateFromClass
public boolean isPopulateFromClass()
-
setPopulateFromClass
public void setPopulateFromClass(boolean fomClass)
-
getInterfaceInfo
protected InterfaceInfo getInterfaceInfo()
-
initializeWSDLOperations
protected void initializeWSDLOperations()
-
initializeWSDLOperation
protected void initializeWSDLOperation(InterfaceInfo intf, OperationInfo o, Method method)
-
initializeClassInfo
protected boolean initializeClassInfo(OperationInfo o, Method method, List<String> paramOrder)
set the holder generic type info into message part info- Parameters:
o-method-
-
createInvoker
protected Invoker createInvoker()
-
createServiceInfo
protected ServiceInfo createServiceInfo(InterfaceInfo intf)
-
createInterface
protected InterfaceInfo createInterface(ServiceInfo serviceInfo)
-
createOperation
protected OperationInfo createOperation(ServiceInfo serviceInfo, InterfaceInfo intf, Method m)
-
bindOperation
protected void bindOperation(OperationInfo op, Method m)
-
initializeWrappedSchema
protected void initializeWrappedSchema(ServiceInfo serviceInfo)
-
checkForElement
protected void checkForElement(ServiceInfo serviceInfo, MessagePartInfo mpi)
-
getAnonymousWrapperTypes
public boolean getAnonymousWrapperTypes()
-
isAnonymousWrapperTypes
public boolean isAnonymousWrapperTypes()
-
setAnonymousWrapperTypes
public void setAnonymousWrapperTypes(boolean b)
-
getQualifyWrapperSchema
public final boolean getQualifyWrapperSchema()
-
isQualifyWrapperSchema
public boolean isQualifyWrapperSchema()
-
setQualifyWrapperSchema
public void setQualifyWrapperSchema(boolean b)
-
createWrappedSchema
protected void createWrappedSchema(ServiceInfo serviceInfo, AbstractMessageContainer wrappedMessage, AbstractMessageContainer unwrappedMessage, QName wrapperBeanName)
-
createBareMessage
protected void createBareMessage(ServiceInfo serviceInfo, OperationInfo opInfo, boolean isOut)
-
createMessageParts
protected void createMessageParts(InterfaceInfo intf, OperationInfo op, Method method)
-
createInputWrappedMessageParts
protected void createInputWrappedMessageParts(OperationInfo op, Method method, MessageInfo inMsg)
-
createOutputWrappedMessageParts
protected void createOutputWrappedMessageParts(OperationInfo op, Method method, MessageInfo outMsg)
-
initializeParameter
protected void initializeParameter(MessagePartInfo part, Class<?> rawClass, Type type)
-
getServiceQName
public QName getServiceQName()
-
getServiceQName
public QName getServiceQName(boolean lookup)
-
getEndpointName
public QName getEndpointName()
-
getEndpointName
public QName getEndpointName(boolean lookup)
-
getEndpointInfo
public EndpointInfo getEndpointInfo()
-
setEndpointName
public void setEndpointName(QName en)
-
getServiceName
protected String getServiceName()
-
getServiceNamespace
protected String getServiceNamespace()
-
getInterfaceName
public QName getInterfaceName()
-
isValidMethod
protected boolean isValidMethod(Method method)
-
isWrapped
protected boolean isWrapped(Method method)
-
isMatchOperation
protected boolean isMatchOperation(String methodNameInClass, String methodNameInWsdl)
-
isOutParam
protected boolean isOutParam(Method method, int j)
-
isInParam
protected boolean isInParam(Method method, int j)
-
isInOutParam
protected boolean isInOutParam(Method method, int j)
-
getInputMessageName
protected QName getInputMessageName(OperationInfo op, Method method)
-
createOutputMessageName
protected QName createOutputMessageName(OperationInfo op, Method method)
-
hasOutMessage
protected boolean hasOutMessage(Method m)
-
initializeFaults
protected void initializeFaults(InterfaceInfo service, OperationInfo op, Method method)
-
initializeDefaultInterceptors
protected void initializeDefaultInterceptors()
- Overrides:
initializeDefaultInterceptorsin classAbstractServiceFactoryBean
-
initializeFaultInterceptors
protected void initializeFaultInterceptors()
-
addFault
protected FaultInfo addFault(InterfaceInfo service, OperationInfo op, Class<?> exClass)
-
getFaultName
protected QName getFaultName(InterfaceInfo service, OperationInfo o, Class<?> exClass, Class<?> beanClass)
-
getAction
protected String getAction(OperationInfo op, Method method)
-
isHeader
public boolean isHeader(Method method, int j)
-
getOperationName
protected QName getOperationName(InterfaceInfo service, Method method)
Creates a name for the operation from the method name. If an operation with that name already exists, a name is create by appending an integer to the end. I.e. if there is already two methods nameddoSomething, the first one will have an operation name of "doSomething" and the second "doSomething1".- Parameters:
service-method-
-
isAsync
protected boolean isAsync(Method method)
-
getInPartName
protected QName getInPartName(OperationInfo op, Method method, int paramNumber)
-
getInParameterName
protected QName getInParameterName(OperationInfo op, Method method, int paramNumber)
-
getOutParameterName
protected QName getOutParameterName(OperationInfo op, Method method, int paramNumber)
-
getOutPartName
protected QName getOutPartName(OperationInfo op, Method method, int paramNumber)
-
isWrapperPartQualified
public Boolean isWrapperPartQualified(MessagePartInfo mpi)
-
isWrapperPartNillable
public boolean isWrapperPartNillable(MessagePartInfo mpi)
-
getWrapperPartMaxOccurs
public long getWrapperPartMaxOccurs(MessagePartInfo mpi)
-
getWrapperPartMinOccurs
public long getWrapperPartMinOccurs(MessagePartInfo mpi)
-
getMethodDispatcher
public MethodDispatcher getMethodDispatcher()
-
setMethodDispatcher
protected void setMethodDispatcher(MethodDispatcher m)
-
getConfigurations
public List<AbstractServiceConfiguration> getConfigurations()
-
setConfigurations
public void setConfigurations(List<AbstractServiceConfiguration> configurations)
-
getServiceClass
public Class<?> getServiceClass()
-
setServiceType
public void setServiceType(ParameterizedType servicetype)
-
setServiceClass
public void setServiceClass(Class<?> serviceClass)
-
checkServiceClassAnnotations
protected void checkServiceClassAnnotations(Class<?> sc)
-
getWsdlURL
public String getWsdlURL()
-
setWsdlURL
public void setWsdlURL(String wsdlURL)
-
setWsdlURL
public void setWsdlURL(URL wsdlURL)
-
getServiceConfigurations
public List<AbstractServiceConfiguration> getServiceConfigurations()
-
setServiceConfigurations
public void setServiceConfigurations(List<AbstractServiceConfiguration> serviceConfigurations)
-
setServiceName
public void setServiceName(QName serviceName)
-
getInvoker
public Invoker getInvoker()
-
setInvoker
public void setInvoker(Invoker invoker)
-
getExecutor
public Executor getExecutor()
-
setExecutor
public void setExecutor(Executor executor)
-
isWrapped
public boolean isWrapped()
-
getStyle
public String getStyle()
-
isRPC
public boolean isRPC(Method method)
-
setWrapped
public void setWrapped(boolean style)
-
getWrapped
public Boolean getWrapped()
Returns non-null if wrapped mode was explicitely disabled or enabled.
-
setValidate
public void setValidate(boolean validate)
If 'validate' is true, this class will validate the service. It will report problems with the service model and the XML schema for the service.- Parameters:
validate-
-
-