Adding a custom listener produces requires an is-gateway="true" attribute on the listener.
Example (note the is-gateway attribute on the listener)
<service category="com.example.soa"
description="Custom Listener Example" invmScope="GLOBAL" name="custom-listener-example">
<listeners>
<listener busidref="custom-provider-channel" name="custom-listener" is-gateway="true">
<property name="gatewayClass" value="com.example.soa.listener.MyFileListener"/>
</listener>
</listeners>
<actions mep="OneWay">
<action class="com.example.soa.soa.action.ExtendedLogActionHandler" name="logBody">
<property name="logLevel" value="INFO"/>
<property name="logMessage" value="SUCCESS"/>
</action>
</actions>
</service>