5151 * @author Arjen Poutsma
5252 * @since 1.5.0
5353 */
54- public class JmsSenderConnection extends AbstractSenderConnection implements WebServiceConnection {
54+ public class JmsSenderConnection extends AbstractSenderConnection {
5555
5656 private final ConnectionFactory connectionFactory ;
5757
@@ -61,9 +61,9 @@ public class JmsSenderConnection extends AbstractSenderConnection implements Web
6161
6262 private final Destination requestDestination ;
6363
64- private Destination responseDestination ;
64+ private final Message requestMessage ;
6565
66- private Message requestMessage ;
66+ private Destination responseDestination ;
6767
6868 private Message responseMessage ;
6969
@@ -77,20 +77,22 @@ public class JmsSenderConnection extends AbstractSenderConnection implements Web
7777
7878 private String textMessageEncoding ;
7979
80- private int messageType ;
81-
8280 /** Constructs a new JMS connection with the given parameters. */
8381 protected JmsSenderConnection (ConnectionFactory connectionFactory ,
8482 Connection connection ,
8583 Session session ,
86- Destination requestDestination ) throws JMSException {
84+ Destination requestDestination ,
85+ Message requestMessage ) throws JMSException {
8786 Assert .notNull (connectionFactory , "'connectionFactory' must not be null" );
8887 Assert .notNull (connection , "'connection' must not be null" );
8988 Assert .notNull (session , "'session' must not be null" );
89+ Assert .notNull (requestDestination , "'requestDestination' must not be null" );
90+ Assert .notNull (requestMessage , "'requestMessage' must not be null" );
9091 this .connectionFactory = connectionFactory ;
9192 this .connection = connection ;
9293 this .session = session ;
9394 this .requestDestination = requestDestination ;
95+ this .requestMessage = requestMessage ;
9496 }
9597
9698 /** Returns the request message for this connection. Returns either a {@link BytesMessage} or a {@link TextMessage}. */
@@ -134,10 +136,6 @@ void setTextMessageEncoding(String textMessageEncoding) {
134136 this .textMessageEncoding = textMessageEncoding ;
135137 }
136138
137- void setMessageType (int messageType ) {
138- this .messageType = messageType ;
139- }
140-
141139 /*
142140 * URI
143141 */
@@ -167,20 +165,6 @@ public String getErrorMessage() throws IOException {
167165 * Sending
168166 */
169167
170- protected void onSendBeforeWrite (WebServiceMessage message ) throws IOException {
171- try {
172- if (messageType == JmsTransportConstants .BYTES_MESSAGE_TYPE ) {
173- requestMessage = session .createBytesMessage ();
174- }
175- else {
176- requestMessage = session .createTextMessage ();
177- }
178- }
179- catch (JMSException ex ) {
180- throw new JmsTransportException (ex );
181- }
182- }
183-
184168 protected void addRequestHeader (String name , String value ) throws IOException {
185169 try {
186170 JmsTransportUtils .addHeader (requestMessage , name , value );
0 commit comments