Replying to self here.

It looks like I could use 
Annotation[] getAnnotations()
on java.lang.Class to read which fields have '@Required'.

-----Original Message-----
From: Ostermueller, Erik [mailto:[EMAIL PROTECTED] 
Sent: Monday, December 01, 2008 3:47 PM
To: [email protected]
Subject: RE: FW: [revisiting] jax-ws @WebParam "Required" annotation?

Dan,

Your suggestion below did the trick, thanks.

###############################################
  <jaxws:server id="jaxwsService"
serviceClass="demo.hw.server.HelloWorld" address="/hello_world">
        <jaxws:serviceBean>
                <bean class="demo.hw.server.HelloWorldImpl" />
        </jaxws:serviceBean>
  </jaxws:server>


@WebService
public interface HelloWorld {
    String sayHiToUser(User user, String foo);
}
###############################################

I loaded the above configuration under a debugger and found all kinds of
meta data about the two parameters, user and foo.
All this would be enough to code support for slapping @Required=true
either of these parameters.

However, what I'm now realizing is that I'd also like support for adding
@Required=true to the _fields_ on the User class, which might have
getters/setters for userId, firstName, lastName and emailAddress, just
as an example.

I didn't see any meta-data for dealing with the attributes of parameter
-- just the parameter itself.
Did I just miss that?  If not, could you suggest an approach for
allowing us to add @Required=true to fields on, in my example, the User
class?

Thanks,
--Erik




-----Original Message-----
From: Daniel Kulp [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, November 05, 2008 2:50 PM
To: [email protected]
Cc: Ostermueller, Erik
Subject: Re: FW: [revisiting] jax-ws @WebParam "Required" annotation?


Hmmmmm..............   I think I see what may be causing this.     
Unfortunately, being at apachecon, I don't really have the time to
really 
make sure.

Are you able to checkout CXF from SVN and build it?   If so, can you try

changing:
rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/WrapperClassGenerat
or.java
line 306 from:
av0.visit("required", "true");
to
av0.visit("required", Boolean.TRUE);
if you build and try with that, I think that would fix it.


Dan




On Wednesday 05 November 2008 1:28:28 pm Ostermueller, Erik wrote:
> Dan wrote:
> >> No, this can be accomplished in just the normal cxf-servlet.xml.
>
> If you
>
> >> use jaxws:endpoint element in your beans to publish it, you can
add:
> >>    <jaxws:serviceFactory>
> >>        <bean
>
> class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean">
>
> >>                <property name="serviceConfigurations">
> >> <snip!>
>
> I'm giving this a try, but I'm getting errors at startup.  Cxf 2.1.3 /
> tomcat 5.x / winxp.
>
> Caused by: javax.xml.ws.WebServiceException:
> java.lang.annotation.AnnotationTypeMismatchException: Incorrectly
typed
> data found for annotation element public abstract boolean
> javax.xml.bind.annotation.XmlElement.required() (Found data of type
> class java.lang.String[true])
> The full stack trace is below, where the you can the println I added
to
> the method I'm overriding (just experimenting now).
> So, my class is getting loaded but then experiencing problems later.
> W/o the <jaxws:serviceFactory>, this is working fine.
>
> I can only find one javax.xml.bind.annotation.XmlElement.
> I've googled for other versions of this file and can't find ones with
> varying type -- only ones with and w/o this method.
> Here is the one that comes with cxf:
>
########################################################################
> ###
> F:\temp\xmlElement>javap -classpath jaxb-api-2.1.jar
> javax.xml.bind.annotation.XmlElement
>
> Compiled from "XmlElement.java"
> public interface javax.xml.bind.annotation.XmlElement extends
> java.lang.annotation.Annotation{
>     public abstract java.lang.String name();
>     public abstract boolean nillable();
>     public abstract boolean required();
>     public abstract java.lang.String namespace();
>     public abstract java.lang.String defaultValue();
>     public abstract java.lang.Class type();
> }
>
> Here is the class I'm injecting:
>
########################################################################
> ###
> package com.fnf.dw.soap.util;
>
> import org.apache.cxf.service.factory.DefaultServiceConfiguration;
> import org.apache.cxf.service.model.MessagePartInfo;
>
> public class RequiredFieldProcessor extends
DefaultServiceConfiguration
> {
>
>     public Long getWrapperPartMinOccurs(MessagePartInfo mpi) {
>
>               //This worked just fine
>
> System.out.println("RequiredFieldProcessor#getWrapperPartMinOccurs ["
+
> mpi.getName() + "] toString [" + mpi.toString() + "]");
>
>               return super.getWrapperPartMaxOccurs(mpi);
>     }
> }
>
>
> Beans.xml
>
########################################################################
> ###
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns="http://www.springframework.org/schema/beans";
>       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>       xmlns:beans="http://www.springframework.org/schema/beans";
>       xmlns:jaxws="http://cxf.apache.org/jaxws";
>       xmlns:cxf="http://cxf.apache.org/core";
>       xsi:schemaLocation="
> http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
> http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans.xsd
> http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd";>
>
>       <import resource="classpath:META-INF/cxf/cxf.xml" />
>       <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml"
> />
>       <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
>
>       <jaxws:endpoint
>         id="idCreditLineForceApproval"
>
>
implementor="com.fnf.dw.soap.sa.creditLine.CreditLineForceApprovalImpl05
> "
>         address="/ForceApproval" />
>
>       <jaxws:endpoint
>         id="idCreditLineInquiry"
>
> implementor="com.fnf.dw.soap.sa.creditLine.CreditLineInquiryImpl05"
>         address="/Inquiry">
>
>       <jaxws:serviceFactory>
>               <bean
> class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean">
>                       <property name="serviceConfigurations">
>                           <list>
>                                       <bean
> class="com.fnf.dw.soap.util.RequiredFieldProcessor"/>
>                                   <bean
> class="org.apache.cxf.service.factory.DefaultServiceConfiguration"/>
>                               </list>
>                       </property>
>               </bean>
>       </jaxws:serviceFactory>
>       </jaxws:endpoint>
>
>     <bean id="logInbound"
> class="org.apache.cxf.interceptor.LoggingInInterceptor"/>
>     <bean id="logOutbound"
> class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
>
>     <cxf:bus>
>         <cxf:features>
>             <cxf:logging/>
>         </cxf:features>
>     </cxf:bus>
>
> </beans>
>
> More detail on the stdout
>
########################################################################
> #########
> RequiredFieldProcessor#getWrapperPartMinOccurs
> [{http://creditLine.sa.soap.dw.fnf.com/}UsernameToken] toString
> [[MessagePartInfo
> name={http://creditLine.sa.soap.dw.fnf.com/}UsernameToken,
> ConcreteName={http://creditLine.sa.soap.dw.fnf.com/}UsernameToken]
> RequiredFieldProcessor#getWrapperPartMinOccurs
> [{http://creditLine.sa.soap.dw.fnf.com/}Request] toString
> [[MessagePartInfo name={http://creditLine.sa.soap.dw.fnf.com/}Request,
> ConcreteName={http://creditLine.sa.soap.dw.fnf.com/}Request]
> RequiredFieldProcessor#getWrapperPartMinOccurs
> [{http://creditLine.sa.soap.dw.fnf.com/}Response] toString
> [[MessagePartInfo
name={http://creditLine.sa.soap.dw.fnf.com/}Response,
> ConcreteName={http://creditLine.sa.soap.dw.fnf.com/}Response]
> 2008-11-05 11:53:59,710 :
DefaultSingletonBeanRegistry.destroySingletons
>
> : Destroying singletons in
>
>
[EMAIL PROTECTED]
> 2ee6: defining beans
>
[cxf,org.apache.cxf.bus.spring.BusWiringBeanFactoryPostProcessor,org.apa
>
che.cxf.bus.spring.Jsr250BeanPostProcessor,org.apache.cxf.bus.spring.Bus
>
ExtensionPostProcessor,org.apache.cxf.resource.ResourceManager,org.apach
>
e.cxf.configuration.Configurer,org.apache.cxf.binding.BindingFactoryMana
>
ger,org.apache.cxf.transport.DestinationFactoryManager,org.apache.cxf.tr
>
ansport.ConduitInitiatorManager,org.apache.cxf.wsdl.WSDLManager,org.apac
>
he.cxf.phase.PhaseManager,org.apache.cxf.workqueue.WorkQueueManager,org.
>
apache.cxf.buslifecycle.BusLifeCycleManager,org.apache.cxf.endpoint.Serv
>
erRegistry,org.apache.cxf.endpoint.ServerLifeCycleManager,org.apache.cxf
>
.endpoint.ClientLifeCycleManager,org.apache.cxf.transports.http.QueryHan
>
dlerRegistry,org.apache.cxf.endpoint.EndpointResolverRegistry,org.apache
>
.cxf.headers.HeaderManager,org.apache.cxf.catalog.OASISCatalogManager,or
>
g.apache.cxf.endpoint.ServiceContractResolverRegistry,org.apache.cxf.bin
>
ding.soap.SoapBindingFactory,org.apache.cxf.binding.soap.SoapTransportFa
>
ctory,org.apache.cxf.binding.soap.customEditorConfigurer,org.apache.cxf.
>
transport.servlet.ServletTransportFactory,idCreditLineForceApproval,idCr
>
editLineInquiry,idCreditLineCancelApproval,idCreditLineApproval,logInbou
> nd,logOutbound]; root of factory hierarchy
> 2008-11-05 11:53:59,742 : ContextLoader.initWebApplicationContext :
> Context initialization failed
> org.springframework.beans.factory.BeanCreationException: Error
creating
> bean with name 'idCreditLineInquiry': Invocation of init method
failed;
> nested exception is javax.xml.ws.WebServiceException:
> java.lang.annotation.AnnotationTypeMismatchException: Incorrectly
typed
> data found for annotation element public abstract boolean
> javax.xml.bind.annotation.XmlElement.required() (Found data of type
> class java.lang.String[true])
> Caused by: javax.xml.ws.WebServiceException:
> java.lang.annotation.AnnotationTypeMismatchException: Incorrectly
typed
> data found for annotation element public abstract boolean
> javax.xml.bind.annotation.XmlElement.required() (Found data of type
> class java.lang.String[true])
>       at
> org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:267)
>       at
> org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:201)
>       at
> org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:394)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> a:39)
>       at
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> Impl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:585)
>       at
>
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFac
>
tory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1242
> )
>       at
>
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFac
> tory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1208)
>       at
>
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFac
> tory.initializeBean(AbstractAutowireCapableBeanFactory.java:1172)
>       at
>
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFac
> tory.createBean(AbstractAutowireCapableBeanFactory.java:427)
>       at
>
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObjec
> t(AbstractBeanFactory.java:249)
>       at
>
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.g
> etSingleton(DefaultSingletonBeanRegistry.java:155)
>       at
>
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Ab
> stractBeanFactory.java:246)
>       at
>
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(Ab
> stractBeanFactory.java:160)
>       at
>
org.springframework.beans.factory.support.DefaultListableBeanFactory.pre
> InstantiateSingletons(DefaultListableBeanFactory.java:291)
>       at
>
org.springframework.context.support.AbstractApplicationContext.refresh(A
> bstractApplicationContext.java:352)
>       at
>
org.springframework.web.context.ContextLoader.createWebApplicationContex
> t(ContextLoader.java:246)
>       at
>
org.springframework.web.context.ContextLoader.initWebApplicationContext(
> ContextLoader.java:189)
>       at
>
org.springframework.web.context.ContextLoaderListener.contextInitialized
> (ContextLoaderListener.java:49)
>       at
>
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.j
> ava:3831)
>       at
>
org.apache.catalina.core.StandardContext.start(StandardContext.java:4323
> )
>       at
>
org.objectweb.jonas.web.catalina50.JOnASStandardContext.start(JOnASStand
> ardContext.java:221)
>       at
>
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.ja
> va:823)
>       at
>
org.apache.catalina.core.ContainerBase.access$000(ContainerBase.java:121
> )
>       at
>
org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerB
> ase.java:143)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at
>
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:805)
>       at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)
>       at
>
org.objectweb.jonas.web.catalina50.CatalinaJWebContainerServiceImpl.doRe
> gisterWar(CatalinaJWebContainerServiceImpl.java:567)
>       at
>
org.objectweb.jonas.web.AbsJWebContainerServiceImpl.registerWar(AbsJWebC
> ontainerServiceImpl.java:802)
>       at
>
org.objectweb.jonas.web.AbsJWebContainerServiceImpl.doStart(AbsJWebConta
> inerServiceImpl.java:368)
>       at
>
org.objectweb.jonas.web.catalina50.CatalinaJWebContainerServiceImpl.doSt
> art(CatalinaJWebContainerServiceImpl.java:303)
>       at
>
org.objectweb.jonas.service.AbsServiceImpl.start(AbsServiceImpl.java:80)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> a:39)
>       at
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> Impl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:585)
>       at
>
org.objectweb.jonas.web.wrapper.CatalinaJWebContainerServiceWrapper.invo
> ke(CatalinaJWebContainerServiceWrapper.java:156)
>       at
>
org.objectweb.jonas.web.wrapper.CatalinaJWebContainerServiceWrapper.star
> t(CatalinaJWebContainerServiceWrapper.java:527)
>       at
>
org.objectweb.jonas.service.ServiceManager.startServices(ServiceManager.
> java:313)
>       at org.objectweb.jonas.server.Server.start(Server.java:555)
>       at org.objectweb.jonas.server.Server.main(Server.java:179)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> a:39)
>       at
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> Impl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:585)
>       at org.objectweb.jonas.server.Bootstrap.main(Bootstrap.java:97)
> Caused by: java.lang.annotation.AnnotationTypeMismatchException:
> Incorrectly typed data found for annotation element public abstract
> boolean javax.xml.bind.annotation.XmlElement.required() (Found data of
> type class java.lang.String[true])
>       at
>
sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy.generateExce
> ption(AnnotationTypeMismatchExceptionProxy.java:38)
>       at
>
sun.reflect.annotation.AnnotationInvocationHandler.invoke(AnnotationInvo
> cationHandler.java:56)
>       at $Proxy31.required(Unknown Source)
>       at
>
com.sun.xml.bind.v2.model.annotation.XmlElementQuick.required(XmlElement
> Quick.java:48)
>       at
>
com.sun.xml.bind.v2.model.impl.ElementPropertyInfoImpl.getTypes(ElementP
> ropertyInfoImpl.java:139)
>       at
>
com.sun.xml.bind.v2.model.impl.RuntimeElementPropertyInfoImpl.getTypes(R
> untimeElementPropertyInfoImpl.java:86)
>       at
>
com.sun.xml.bind.v2.model.impl.ElementPropertyInfoImpl$1.size(ElementPro
> pertyInfoImpl.java:78)
>       at java.util.AbstractList$Itr.hasNext(AbstractList.java:416)
>       at
>
com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.ja
> va:255)
>       at
>
com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeM
> odelBuilder.java:98)
>       at
>
com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeM
> odelBuilder.java:79)
>       at
>
com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.ja
> va:209)
>       at
>
com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeM
> odelBuilder.java:93)
>       at
>
com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeM
> odelBuilder.java:79)
>       at
>
com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.jav
> a:315)
>       at
>
com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.jav
> a:330)
>       at
>
com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextIm
> pl.java:432)
>       at
>
com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:
> 286)
>       at
>
com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:139
> )
>       at
>
com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:117
> )
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> a:39)
>       at
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> Impl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:585)
>       at
> javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:214)
>       at javax.xml.bind.ContextFinder.find(ContextFinder.java:375)
>       at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:574)
>       at
>
org.apache.cxf.jaxb.JAXBDataBinding.createJAXBContextAndSchemas(JAXBData
> Binding.java:532)
>       at
>
org.apache.cxf.jaxb.JAXBDataBinding.initialize(JAXBDataBinding.java:282)
>       at
>
org.apache.cxf.service.factory.ReflectionServiceFactoryBean.buildService
> FromClass(ReflectionServiceFactoryBean.java:359)
>       at
>
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromCla
> ss(JaxWsServiceFactoryBean.java:519)
>       at
>
org.apache.cxf.service.factory.ReflectionServiceFactoryBean.initializeSe
> rviceModel(ReflectionServiceFactoryBean.java:410)
>       at
>
org.apache.cxf.service.factory.ReflectionServiceFactoryBean.create(Refle
> ctionServiceFactoryBean.java:189)
>       at
>
org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsService
> FactoryBean.java:164)
>       at
>
org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(
> AbstractWSDLBasedEndpointFactory.java:100)
>       at
>
org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:
> 117)
>       at
>
org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBea
> n.java:168)
>       at
> org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:336)
>       at
> org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:251)
>       ... 47 more
> 2008-11-05 11:53:59,789 : StandardContext.start : Error listenerStart
> 2008-11-05 11:53:59,789 : StandardContext.start : Context startup
failed
> due to previous errors
>
########################################################################
> #########
>
> Thanks,
> --Erik
>
> -----Original Message-----
> From: Daniel Kulp [mailto:[EMAIL PROTECTED]
> Sent: Monday, November 03, 2008 1:10 PM
> To: [email protected]
> Cc: Ostermueller, Erik
> Subject: Re: FW: [revisiting] jax-ws @WebParam "Required" annotation?
>
> On Friday 31 October 2008 12:02:51 pm Ostermueller, Erik wrote:
> > Hi, I'm still looking for feedback on this in case someone has got a
> > minute.
> > --Erik
>
> No, this can be accomplished in just the normal cxf-servlet.xml.
If
> you
> use jaxws:endpoint element in your beans to publish it, you can add:
>
>     <jaxws:serviceFactory>
>         <bean
> class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean">
>                 <property name="serviceConfigurations">
>                         <list>
>                                 <bean
> class="com.your.ServiceConfiguration"/>
>
>                                 <bean
> class="org.apache.cxf.service.factory.DefaultServiceConfiguration"/>
>                         </list>
>                 </property>
>         </bean>
>     </jaxws:serviceFactory>
>
>
> Dan
>
> > -----Original Message-----
> > From: Ostermueller, Erik [mailto:[EMAIL PROTECTED]
> > Sent: Tuesday, October 28, 2008 8:30 AM
> > To: Daniel Kulp; [email protected]
> > Subject: RE: [revisiting] jax-ws @WebParam "Required" annotation?
> >
> > With our setup, CXFServlet loads with web.xml.
> > I'm thinking I should subclass CXFServlet and then configure the
> > services (like you showed me below) in that subclass after my
>
> beans.xml
>
> > is loaded.  Does that sound right?
> >
> > -----Original Message-----
> > From: Daniel Kulp [mailto:[EMAIL PROTECTED]
> > Sent: Monday, October 27, 2008 2:21 PM
> > To: [email protected]
> > Cc: Ostermueller, Erik
> > Subject: Re: [revisiting] jax-ws @WebParam "Required" annotation?
> >
> >
> > If you use the ServerFactoryBeans (and not just
> > "Endpoint.publish(...)"), you can call:
> >
> > factory.getServiceFactory().getConfigurations()
> > or setConfigurations() to manipulate the list of configurations.  In
> > general, you would do something like:
> >
> > factory.getServiceFactory().getConfigurations().add(0, yourConfig);
> >
> > Dan
> >
> > On Monday 27 October 2008 1:05:22 pm Ostermueller, Erik wrote:
>
> http://www.nabble.com/[EMAIL PROTECTED]
>
> > > 83
> > > 7631.html
> > >
> > > In the above thread, Dan wrote:
> > > >> With 2.1.3, you will be able to write a ServiceConfiguration
>
> object
>
> > > that
> > >
> > > >> can override the getWrapperPartMinOccurs method to return 1
>
> instead
>
> > > of
> > >
> > > >> 0.  You can try the 2.1.3 snapshots if you want to play with
>
> that.
>
> > > I'm doing java-first and would like to take a look at trying this.
> > > How do you associate a custom ServiceConfiguration with the
service?
> > > Perhaps you could point me to a particular junit test that does
> >
> > this...
> >
> >
> >
> > --
> > Daniel Kulp
> > [EMAIL PROTECTED]
> > http://dankulp.com/blog
> >
> > _____________
> >
> > The information contained in this message is proprietary and/or
> > confidential. If you are not the
> > intended recipient, please: (i) delete the message and all copies;
>
> (ii)
>
> > do not disclose,
> > distribute or use the message in any manner; and (iii) notify the
>
> sender
>
> > immediately. In addition,
> > please be aware that any message addressed to our domain is subject
to
> > archiving and review by
> > persons other than the intended recipient. Thank you.
> > _____________
> >
> > _____________
> >
> > The information contained in this message is proprietary and/or
> > confidential. If you are not the intended recipient, please: (i)
>
> delete the
>
> > message and all copies; (ii) do not disclose, distribute or use the
>
> message
>
> > in any manner; and (iii) notify the sender immediately. In addition,
>
> please
>
> > be aware that any message addressed to our domain is subject to
>
> archiving
>
> > and review by persons other than the intended recipient. Thank you.
> > _____________



-- 
Daniel Kulp
[EMAIL PROTECTED]
http://dankulp.com/blog

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email 
______________________________________________________________________

_____________

The information contained in this message is proprietary and/or
confidential. If you are not the 
intended recipient, please: (i) delete the message and all copies; (ii)
do not disclose, 
distribute or use the message in any manner; and (iii) notify the sender
immediately. In addition, 
please be aware that any message addressed to our domain is subject to
archiving and review by 
persons other than the intended recipient. Thank you.
_____________

_____________

The information contained in this message is proprietary and/or confidential. 
If you are not the 
intended recipient, please: (i) delete the message and all copies; (ii) do not 
disclose, 
distribute or use the message in any manner; and (iii) notify the sender 
immediately. In addition, 
please be aware that any message addressed to our domain is subject to 
archiving and review by 
persons other than the intended recipient. Thank you.
_____________

Reply via email to