check Q Apply control table IBMQREP_RECVQUEUES - db2

I am using Q Apply application to receive messages from an MQ Server and I am getting the following error message:
ASN0576E "Q Apply" : "ASNQ" : "BR00000" : The program cannot access the WebSphere MQ queue " ASN.COLDBBLD.ADMINQ". The queue name was specified in column "ADMINQ" of control table "IBMQREP_RECVQUEUES"
This ASN0576E code is when a queue doesn't exist or then the queue name is incorrect in the control tables. I already check the MQ side and everything is fine, the queue does exist, etc.. So the problem is on the DB2 side
I know I have to check in the IBMQREP_RECVQUEUES control table but I am not sure which command I should use. Is it asnqacmd, or asnqapp, etc..
Thanks in advance

Related

Spring Integration: Imap, continuous remote service polling caused by attribute mail-filter-expression in imap-idle-channel-adapter

I implemented a imap idle mail receiver with spring integration mail 4.2.6.
When, in the configuration of the receiver in the tag
<mail:imap-idle-channel-adapter mail-filter-expression="something" ... >
i use the attribute "mail-filter-expression" this causes continuous ( about every second) polling of the remote mail service with this repeated message:
10:29:21 INFO o.s.i.mail.ImapMailReceiver - attempting to receive mail from folder [INBOX]
If i remove the attribute "mail-filter-expression" this continuos polling disappears.
I don't know if this is the desired behavior of the framework.
My idea is to limit this comtinuos polling of the remote service, in fact i'm using the imap-idle-channel-adapter
this is my configuration of the receiver:
<mail:imap-idle-channel-adapter
id="mailAdapterMailInAccettazione"
store-uri="imaps://...the url of the remote service
channel="emailsInAccettazioneDaLeggere"
auto-startup="true"
should-delete-messages="false"
should-mark-messages-as-read="false"
java-mail-properties="javaMailProperties"
mail-filter-expression="subject matches '(?i).*somenthing: .*'" >
<mail:transactional synchronization-factory="syncFactoryAccettazione"/>
</mail:imap-idle-channel-adapter>
I want to cofigure the receiver in idle mode but using the mail-filter-expression attribute because i want to read only some emails.
UPDATE : after further investigation i discovered that the remote mail service doesn't support RECENT and USER flag:
This email server does not support RECENT or USER flags
So this is what was happening:
mail-filter-expression caused messages to get filtered, but no message was flagged as RECENT = false. This caused
continuous attempts to read the messages as all messages always appeared "
new"
.
I re implemented the flow not using the mail-filter-expression but filtering messages in subsequent channels

MessageEnumerator.MoveNext() error from remote server - C#

I have created one console app where i implemented search message from MSMQ functionality for specific criteria (Label/ Body / Priority).
MessageQueue msgQ = new MessageQueue("FormatName:Direct=OS:(MachineName A)\private$\TestQueue")
msgQ.Label = "Label test" // Simlarly i set search criteria
MessageEnumerator msgEnumtr = msgQ.GetMessageEnumerator2(); // Search Queue
While(msgEnumtr.MoveNext(timeout)) // This line works fine in MSMQ server, not working remote server.
{
Message currentMsg= msgEnumtr.Current;
}
Here "TestQueue" is the private queue set up in "Machine A". I have given Anonymous Login rights for this queue.
I am running my console application from "Machine B" connected in the same LAN. MSMQ components also enabled/installed on this machine. When i run my console exe here, getting "Object reference not set to an instance" error at "While(msgEnumtr.MoveNext(timeout))" line. Sometime i am getting following error "cursor is not currently pointing to Message instance".
But when i run this exe from "Machine A", its working fine & searching as expected.
(Note : queue.Send(Msg) - (Put message to queue) Works fine in both machine, only issue with search functionality)
Anybody can help me out on this. Thanks.

Warning message when starting orion from image

I've just installed orion-psb-image-R3.3 using the image available #Fi-Lab. When I start the orion instance, I get a message telling that there is some problem with the contextBroker.pid:
" Starting contextBroker... cat: /var/log/contextBroker/contextBroker.pid: No existe el fichero o el directorio"
Despite this message, the context broker starts properly. I've just deployed a new machine with the aforementioned image, is there anything I need to do before /etc/init.d/contextBroker start.
Thanks
This 'error message' is harmless.
At starting the broker, a check is made to see whether a broker is already running (and for that the pid-file is needed). As the pid file doesn't exist, this unfortunate message pops up. We are working on improving the start/stop script, to be included probably in our next release (0.13.0).

The name of the job cannot be blank. (SqlManagerUI)

I had filled all the parameters but it doesn't let me save my job because this error occurs.
I specified a job name in general mode but it shows this error again.
The name of the job cannot be blank. (SqlManagerUI)
Program Location:
at Microsoft.SqlServer.Management.SqlManagerUI.JobPropertySheet.DoPreProcessExecution(RunType runType, ExecutionMode& executionResult)
at Microsoft.SqlServer.Management.SqlMgmt.SqlMgmtTreeViewControl.DoPreProcessExecutionAndRunViews(RunType runType)
at Microsoft.SqlServer.Management.SqlMgmt.SqlMgmtTreeViewControl.ExecuteForSql(PreProcessExecutionInfo executionInfo, ExecutionMode& executionResult)
at Microsoft.SqlServer.Management.SqlMgmt.SqlMgmtTreeViewControl.Microsoft.SqlServer.Management.SqlMgmt.IExecutionAwareSqlControlCollection.PreProcessExecution(PreProcessExecutionInfo executionInfo, ExecutionMode& executionResult)
at Microsoft.SqlServer.Management.SqlMgmt.ViewSwitcherControlsManager.RunNow(RunType runType, Object sender)
Are you creating the job on the same version of SQL that the server is running?
I have had something like this before when creating the job on my development PC. To fix the problem I RDP'd to the SQL Server and created the job on the server without any problem.
Phil

JBoss MDB - JMSBytesMessage class cast exception

I'm working on an EJB3 MDB that listen to a MQ queue in a distant server.
All is working fine (MDB triggered when a message is put into the listenned queue) except the treatment done by the MDB. For information, i use WMQ resource adapter to map the queue.
Into the method 'onMessage' of the MDB, i try to cast the given message into the class 'com.ibm.jms.JMSBytesMessage', but i get a strange error message.
The code is the following one (simple for the example):
public void onMessage(Message theMessage) {
((JMSBytesMessage) theMessage).readBytes(myBytes);
}
And the exception message:
Exception while reading input request: com.ibm.jms.JMSBytesMessage incompatible with com.ibm.jms.JMSBytesMessage
Ok, the message received should be (and is) type 'com.ibm.jms.JMSBytesMessage', so why the application doesn't work ? Should it be possible that my JBoss server already use another version of the library 'com.ibm.mqjms.jar' (including the JMSBytesMessage class) and cause this kind of error ?
ps: i've deployed the application on a JBoss server version 4.2.3 under linux system.
I've already make the application work on my local machine with same version of JBoss server but under window system (same configuration, same libraries, etc.)
Does someone have an idea about the reason of such error ?
Thanks in advance for any help.
Regards,
EDIT: SOLUTION: cast with javax.jms.BytesMessage instead of com.ibm.jms.JMSBytesMessage
Might as well reproduce my comment as answer:
Don't cast to the MQ-specific com.ibm.jms.JMSBytesMessage, cast to the JMS-standard javax.jms.BytesMessage. Coupling your code to the implementation-specific types is counter to what JMS tries to achieve.