You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Ben Tomasini <be...@gmail.com> on 2007/07/09 19:52:58 UTC
Unwanted setter method exposed as web service operation using Spring
Hello,
I am using the Spring integration and seem to have a problem. When my
service is deployed, the WSDL shows that my setter method (setProjectDao) is
exposed as a web service operation. This method is only present so that
Spring can set the dependency. How to I exclude this method?
Below is the java class and services.xml:
public class ProjectService {
private ProjectDao projectDao;
public void setProjectDao(ProjectDao projectDao) {
this.projectDao = projectDao;
}
public Project[] getAll() {
...
}
public Project getForId(BigDecimal id) {
...
}
public Project create(Project project) {
...
}
public Project update(Project project) {
...
}
}
<?xml version="1.0" encoding="UTF-8"?>
<serviceGroup>
<service name="ProjectService">
<parameter name="ServiceObjectSupplier" locked="false">
org.apache.axis2.extensions
.spring.receivers.SpringServletContextObjectSupplier</parameter>
<parameter name="SpringBeanName"
locked="false">projectService</parameter>
<operation name="getForId">
<messageReceiver class="
org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</operation>
<operation name="getAll">
<messageReceiver class="
org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</operation>
<operation name="update">
<messageReceiver class="
org.apache.axis2.rpc.receivers.RPCMessageReceiver "/>
</operation>
<operation name="create">
<messageReceiver class="
org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</operation>
</service>
</serviceGroup>
Re: Unwanted setter method exposed as web service operation using Spring
Posted by Ben Tomasini <be...@gmail.com>.
Thanks.
That worked, but it seems too easy for someone to forget to add this.
Is there a way to go the other direction? Only publish operations which are
explicitly specified?
Ben
On 7/9/07, robert lazarski <ro...@gmail.com> wrote:
>
> This should work for you, try placing this in the services.xml :
>
> <excludeOperations>
> <operation>setProjectDao</operation>
> </excludeOperations>
>
> HTH,
> Robert
>
> On 7/9/07, Ben Tomasini <be...@gmail.com> wrote:
> > Hello,
> >
> > I am using the Spring integration and seem to have a problem. When my
> > service is deployed, the WSDL shows that my setter method
> (setProjectDao) is
> > exposed as a web service operation. This method is only present so that
> > Spring can set the dependency. How to I exclude this method?
> >
> > Below is the java class and services.xml:
> >
> > public class ProjectService {
> >
> > private ProjectDao projectDao;
> >
> > public void setProjectDao(ProjectDao projectDao) {
> > this.projectDao = projectDao;
> > }
> >
> > public Project[] getAll() {
> > ...
> > }
> >
> > public Project getForId(BigDecimal id) {
> > ...
> > }
> >
> > public Project create(Project project) {
> > ...
> > }
> >
> > public Project update(Project project) {
> > ...
> > }
> >
> > }
> >
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <serviceGroup>
> >
> > <service name="ProjectService">
> > <parameter name="ServiceObjectSupplier"
> > locked="false">org.apache.axis2.extensions
> > .spring.receivers.SpringServletContextObjectSupplier</parameter>
> > <parameter name="SpringBeanName"
> > locked="false">projectService</parameter>
> > <operation name="getForId">
> > <messageReceiver
> > class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
> > </operation>
> > <operation name="getAll">
> > <messageReceiver
> > class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
> > </operation>
> > <operation name="update">
> > <messageReceiver
> > class="org.apache.axis2.rpc.receivers.RPCMessageReceiver
> > "/>
> > </operation>
> > <operation name="create">
> > <messageReceiver
> > class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
> > </operation>
> > </service>
> >
> > </serviceGroup>
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-user-help@ws.apache.org
>
>
Re: Unwanted setter method exposed as web service operation using Spring
Posted by robert lazarski <ro...@gmail.com>.
This should work for you, try placing this in the services.xml :
<excludeOperations>
<operation>setProjectDao</operation>
</excludeOperations>
HTH,
Robert
On 7/9/07, Ben Tomasini <be...@gmail.com> wrote:
> Hello,
>
> I am using the Spring integration and seem to have a problem. When my
> service is deployed, the WSDL shows that my setter method (setProjectDao) is
> exposed as a web service operation. This method is only present so that
> Spring can set the dependency. How to I exclude this method?
>
> Below is the java class and services.xml:
>
> public class ProjectService {
>
> private ProjectDao projectDao;
>
> public void setProjectDao(ProjectDao projectDao) {
> this.projectDao = projectDao;
> }
>
> public Project[] getAll() {
> ...
> }
>
> public Project getForId(BigDecimal id) {
> ...
> }
>
> public Project create(Project project) {
> ...
> }
>
> public Project update(Project project) {
> ...
> }
>
> }
>
>
> <?xml version="1.0" encoding="UTF-8"?>
> <serviceGroup>
>
> <service name="ProjectService">
> <parameter name="ServiceObjectSupplier"
> locked="false">org.apache.axis2.extensions
> .spring.receivers.SpringServletContextObjectSupplier</parameter>
> <parameter name="SpringBeanName"
> locked="false">projectService</parameter>
> <operation name="getForId">
> <messageReceiver
> class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
> </operation>
> <operation name="getAll">
> <messageReceiver
> class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
> </operation>
> <operation name="update">
> <messageReceiver
> class="org.apache.axis2.rpc.receivers.RPCMessageReceiver
> "/>
> </operation>
> <operation name="create">
> <messageReceiver
> class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
> </operation>
> </service>
>
> </serviceGroup>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org