Is it ok if I configure all my inbound and outbound transactions across all the trading partners to communicate with their respective SOA composite via the default JMS Queues(B2B_IN_QUEUE and B2B_OUT_QUEUE)?Depends on load and message priority. If load is not too huge and all the transactions are of same priority then you may use default JMS queues, otherwise create separate queues so that messages can be distributed and processed as per the priority.
My payload will be of 30MB in size. All what memory settings should I take care if I am using a JMS queue?Why do you want to process 30MB of data in memory? You may like to refer -
But the size of the payload which I am using is unpredictable, it can differ from 1 MB to 40MB in future.This is not a problem. B2B can handle MB's of file if server has enough resources.
all other payloads greater than 3MB, it is getting faulted with the message:Please remember that when B2B will find a large payload then it will write the large payload into the "Large Payload Directory" (defined in Administration--> Configuration) and pass it's reference to the middleware. So at middleware, you will not receive the actual payload but you will receive it's reference. Using File adapter sync read option, you may read the large file from "Large Payload Directory" at SOA layer.
"SAX Exception in translator. SAX Exception raised while trying to SAX Parse InputStream . Please make sure that the xml data is valid."
when the payload exceeds the large payload size, it lands in exception.You mean to say it fails at SOA layer? If composite instance is failing then it is a different issue. Please check for below points in case message is failing at SOA -