Specifying multiple JSP's in Execute Queue

Hi
Bea's documentation says that you can specify the execute queue for a
perticular JSP as follows:
<servlet>
<servlet-name>MainServlet</servlet-name>
<jsp-file>/myapplication/critical.jsp</jsp-file>
<init-param>
<param-name>wl-dispatch-policy</param-name>
<param-value>CriticalAppQueue</param-value>
</init-param>
</servlet>
Am wondering if there is a way to specify the execute queue for a
whole set of JSP's. Was trying wildcards in the jsp-file tag but
havent yet had success. I would like to tell weblogic to use the queue
I specify for all jsp's in a certain directory and I dont want to have
to create <servlet> tags for each one since there are many!.
If anyone has solved this or has any suggestions, please let me know.
Thanks

Did you try  in SM58( in the menu edit / Execute LUW's ?  There send you to screen " Execute Calls Not Yet Executed"  where you can select some parameters as excution date,  destination  user name.....  and other options with check boxes.
I have used it and is good

Similar Messages

  • Different execute queues with different thread priorities

    We are running WebLogic 6.1, SP2 on Solaris 2.8 and I have a question related to the
    use of Execute queues
    I'm aware that the administration console servlets, and the rest of requests given
    to the server run in separate execution queues each with their own pool of threads.
    There is an <executequeue> element in the config.xml that allows you to change the
    parameters of the default execute queue that most requests are handled in.
    My question is is it possible to create new execute queues, each with a given number
    of threads running at a different priority. Then one could assign a particular WAR
    deployment to a queue and hence control the priority that certain requests run at
    governed by the deployment that received the initial request.
    Essentially the problem that I'm trying to address is that I have a JAR with MDBs
    in it. I also have JARs with Entity and Session EJBs and WARs. They are all using
    the same pool of threads to execute. I want to be able to throttle the MDBs as they
    receive messages so they don't take over the machine and interfere with interactive
    use. Now I can limit the number of MDBs in the MDB pool, but then if the machine
    is not being used by users, then the machine resources are wasted only allowing one
    MDB to be active at a time when there are a lot of messages in the queue.
    What I want to be able to do is to have as many MDBs run as I can, up to a certain
    limit, say 15 for example, but not to pull from the same thread pool/execute queue
    as the requests for URLs in the WAR. Also I want the MDB threads to run at a much
    lower priority and always give preference to interactive requests.
    So interactive threads will always win and grab the processors if interactive use
    is high, but if it's not, the MDBs can run instead.
    Regs,
    Paul

    Hi,
    I had a chat with BEA support about my issue. You can create multiple ExecuteQueues
    and assign them to servlet definitions in WARs in the web.xml, and with an option
    to the EJBC compiler, you can assign a particular class of EJB to an ExecuteQeueue.
    For details see http://e-docs.bea.com/wls/docs61/perform/AppTuning.html#1106284
    Presumably it's the thread of the initial request that counts, i.e. if a WAR calls
    an EJB, then it's the thread in the execute queue of the WAR that will be used right
    the way through the request, not that of the EJB being called, assuming they are
    both deployed in the same WebLogic instance. If they were in different instances,
    you would obviously have a thread from the WAR queue on one instance, and a thread
    from the EJB queue on another instance.
    If a plain Java command-line client connected directly to an EJB, then it would be
    the thread from the ExecuteQueue of the EJB that would get used.
    I've been told that MDBs always run in the default queue, so it seems that the way
    for me to do what I want is just to create an ExecuteQueue, set the priority of the
    threads in this queue to be higher than that of the default queue, and assign this
    queue to my WARs. I can leave my EJBs running in the default queue.
    Regs,
    Paul
    "Dimitri I. Rakitine" <[email protected]> wrote:
    Don't know about 6.1 (One can find out very easily what the possible config
    parameters
    are by deploting
    http://dima.dhs.org/misc/listMBeans.jsp and
    http://dima.dhs.org/misc/showMBean.jsp
    abd looking at the XXXConfig mbeans), but in 7.0 there are quite a few
    things which
    can be tuned in the executequeue config (and priority is one of them. also
    interesting
    is that it is possible to configure it to increase number of execute threads
    when queue
    length exceeds some specified threshold) :
    QueueLength
    Returns the maximum length of this queue.
    ThreadPriority
    Returns the priority of the threads associated with this queue.
    ThreadCount
    Returns the number of threads assigned to this queue.
    QueueLengthThresholdPercent
    Returns the threshold percent for length of this queue, set in QueueLength.
    ThreadsIncrease
    Returns the number of threads to grow when a queue is within QueueLengthThresholdPercent
    of the set QueueLength.
    ThreadsMaximum
    Returns the maximum number of threads in the pool.
    ThreadsMinimum
    Returns the minimum number of threads in the pool.
    Dimitri

  • Run my web service in custom Execute Queue

    i developed my web service using the WorkShop 8.1 Sp3
    I created a custom execute queuem in my weblogic server
    Can anyone guide how i can instruct my web serivce to run in my custom execute queue.
    Always it's going to the Default execute queue.
    Found for servlet and jsp the dispatch policy can be specified in the deployment descriptor.
    But how i can specify for the web service ?
    thanks

    Hi Senthil
    If you are still in Sp3 then the solution will NOT work.
    You cannot edit the web.xml and get it working.
    Sp4 is better compared to sp3 and you should be able to run your application on sp4 without any changes.
    Below is some details on how it works and why you cannot use it on Sp3:
    If you can move to Sp4, yes you can follow the docs provided by Raj (http://e-docs.bea.com/workshop/docs81/doc/en/workshop/reference/configfiles/con_web_xml_ConfigurationFile.html)and configure the dispath-policy in web.xml
    After the build the information in web.xml will go into the EJB xml descriptor weblogic-ejb-jar.xml of the workshop internal EJB (SyncDispatcherBean)
    Your weblogic-ejb-jar.xml for the SyncDispatcherBean will have
    <dispatch-policy>
    weblogic.jws.sync.dispatch
    </dispatch-policy>
    However if you remain on sp3, this config put into the web.xml will not work as the functionality was introduced only in sp4.
    For Sp3, BEA does not support the manual editing of the weblogic-ejb-jar.xml of the SyncDispatcherBean as these get regenerated everytime on build.
    Thanks,
    Vimala

  • [Forum FAQ] How do I send multiple rows returned by Execute SQL Task as Email content in SQL Server Integration Services?

    Question:
    There is a scenario that users want to send multiple rows returned by Execute SQL Task as Email content to send to someone. With Execute SQL Task, the Full result set is used when the query returns multiple rows, it must map to a variable of the Object data
    type, then the return result is a rowset object, so we cannot directly send the result variable as Email content. Is there a way that we can extract the table row values that are stored in the Object variable as Email content to send to someone?
    Answer:
    To achieve this requirement, we can use a Foreach Loop container to extract the table row values that are stored in the Object variable into package variables, then use a Script Task to write the data stored in packages variables to a variable, and then set
    the variable as MessageSource in the Send Mail Task. 
    Add four variables in the package as below:
    Double-click the Execute SQL Task to open the Execute SQL Task Editor, then change the ResultSet property to “Full result set”. Assuming that the SQL Statement like below:
    SELECT   Category, CntRecords
    FROM         [table_name]
    In the Result Set pane, add a result like below (please note that we must use 0 as the result set name when the result set type is Full result set):
    Drag a Foreach Loop Container connects to the Execute SQL Task. 
    Double-click the Foreach Loop Container to open the Foreach Loop Editor, in the Collection tab, change the Enumerator to Foreach ADO Enumerator, then select User:result as ADO object source variable.
    Click the Variable Mappings pane, add two Variables as below:
    Drag a Script Task within the Foreach Loop Container.
    The C# code that can be used only in SSIS 2008 and above in Script Task as below:
    public void Main()
       // TODO: Add your code here
                Variables varCollection = null;
                string message = string.Empty;
                Dts.VariableDispenser.LockForWrite("User::Message");
                Dts.VariableDispenser.LockForWrite("User::Category");
                Dts.VariableDispenser.LockForWrite("User::CntRecords");     
                Dts.VariableDispenser.GetVariables(ref varCollection);
                //Format the query result with tab delimiters
                message = string.Format("{0}\t{1}\n",
                                            varCollection["User::Category"].Value,
                                            varCollection["User::CntRecords"].Value
               varCollection["User::Message"].Value = varCollection["User::Message"].Value + message;   
               Dts.TaskResult = (int)ScriptResults.Success;
    The VB code that can be used only in SSIS 2005 and above in Script Task as below, please note that in SSIS 2005, we should
    change PrecompileScriptIntoBinaryCode property to False and Run64BitRuntime property to False
    Public Sub Main()
            ' Add your code here
            Dim varCollection As Variables = Nothing
            Dim message As String = String.Empty
            Dts.VariableDispenser.LockForWrite("User::Message")
            Dts.VariableDispenser.LockForWrite("User::Category")
            Dts.VariableDispenser.LockForWrite("User::CntRecords")
            Dts.VariableDispenser.GetVariables(varCollection)
            'Format the query result with tab delimiters
            message = String.Format("{0}" & vbTab & "{1}" & vbLf, varCollection("User::Category").Value, varCollection("User::CntRecords").Value)
            varCollection("User::Message").Value = DirectCast(varCollection("User::Message").Value,String) + message
            Dts.TaskResult = ScriptResults.Success
    End Sub
    Drag Send Mail Task to Control Flow pane and connect it to Foreach Loop Container.
    Double-click the Send Mail Task to specify the appropriate settings, then in the Expressions tab, use the Message variable as the MessageSource Property as below:
    The final design surface like below:
    References:
    Result Sets in the Execute SQL Task
    Applies to:
    Integration Services 2005
    Integration Services 2008
    Integration Services 2008 R2
    Integration Services 2012
    Integration Services 2014
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    Thanks,
    Is this a supported scenario, or does it use unsupported features?
    For example, can we call exec [ReportServer].dbo.AddEvent @EventType='TimedSubscription', @EventData='b64ce7ec-d598-45cd-bbc2-ea202e0c129d'
    in a supported way?
    Thanks! Josh

  • Identifying Execute Queue Threads as Socket Readers

    Hi All,
    Preface: I am trying to identify at any given instance the percentage of
    socket reader threads that are in use - this will help me to identify when
    all threads are in use and unable to service user requests. Thus my goal is
    to identify threads that are socket readers and whether they are active or
    idle.
    Through JMX I can obtain an instance of each
    weblogic.management.runtime.ExecuteThread, which lists the same information
    that you see in the console if you drill down to the thread level, for
    example:
    mydomain> Servers> myserver> Active Execute Queues> default> Execute Threads
    That information includes:
    - thread number
    - total requests
    - last request
    - current request
    - transaction
    - user
    - is the thread idle?
    Now my question is from this information can you identify which of these
    threads are being used as socket readers?
    Here are some excerpts from my JMX calls:
    Name: ExecuteThread: '0' for queue: 'default'
    Execute Queue Runtime Name: default
    Current Request: null
    Last Request: Http Request: /bookstore/en/authors/showauthors.jsp
    User: null
    Is Idle?: true
    Name: ExecuteThread: '15' for queue: 'default'
    Execute Queue Runtime Name:default
    Current Request: null
    Last Request: Scheduled Trigger
    User: null
    Is Idle?: true
    Name: ExecuteThread: '26' for queue: 'default'
    Execute Queue Runtime Name:default
    Current Request: null
    Last Request: ListenRequest for a new connection on: 'Socket
    addr=127.0.0.1,port=2061,localport=7001]'
    User: null
    Is Idle?: true
    Name: ExecuteThread: '59' for queue: 'default'
    Execute Queue Runtime Name:default
    Current Request: Socket Reader Request
    Last Request:
    weblogic.transaction.internal.ServerCoordinatorDescriptor$2@138786
    User: null
    Is Idle?: false
    It would appear that the "ListenRequest" last request would identify a
    socket reader, only I have 60 threads in my default execute queue with 70%
    dedicated to socket readers and the number of threads that say their last
    request was "ListenRequest ..." is only 5.. Furthermore there is only one
    "Socket Reader Request" identified thread.
    Are threads identified as socket readers permanently or constantly reused
    for whatever purpose is required (with a cap of use based off of the socket
    reader perspective)?
    Thanks in advance for your help!
    Steve

    Hi Achhi,
    Socket Reader Threads are the Threads which are responsible for reading the incoming request data. We can divide the Socket reader threads in two categories:
    Pure Java Socket Reqders: The pure-Java socket reader implementation, where the socket reader threads continually poll all opened sockets to determine whether they contain data to be read, even if the sockets have no data to read. (From Performance Point This is Not Good that the Sockets will be in Opened Mode even if there is no Data to read)
    Native Socket Readers: (These are the Dafault Socket Readers) The native IP socket reader provided by the host machine's operating system, where the socket reader threads target only active sockets that contain data to be read. Native socket readers never poll sockets because they are immediately notified when a socket needs to be serviced. For Better Performance You should always prefer using Native Socket Readers.
    To Enable Native Socket Readers You can Login to AdminConsole--->Servers ---><SERVER_NAME>--->configuration (Tab)--->Tuning (SubTab)---> "Enable Native IO" (This checkbox must be checked)
    Still If you want to use the Java Socket Readers .... still you can improve the performance of socket communication by configuring the proper number of socket reader threads for each server instance. For best performance, the number of socket reader threads in WebLogic Server should equal the potential maximum number of opened sockets.
    Thanks
    Jay SenSharma
    http://weblogic-wonders.com/weblogic (WebLogic Wonders Are here)

  • Execute queue thread count set back?

    I have a script which automatically sets up execute queues (and their thread counts) for either an admin server or two managed servers in a cluster (depending on whether it's a standalone deployment). Upon building a domain, the script connects to a temporary server and sets everything up, at this point it appears all the queues and thread counts are set correctly. However once the build has completed and the generated config.xml is checked, three queues don't have any thread counts associated with them at all; these queues are:
    ThreadQueue (Count)
    wli.internal.ProcessInstanceInfo (15)
    wli.internal.ProcessTracking (15)
    wli.process.event.thread.pool (15)
    The other queues have all their thread counts set correctly. Does anybody know how these queues are used and if this will have an impact on the above problem?

    No worries about this post, the reason has been solved.
    Reason
    The default thread count for execute queues in development mode is 15 threads, therefore if a queue is specified with this value it won't be set in the config.xml (when an execute queue doesn't have a ThreadCount attribute, the default is used instead). The trouble is that when the server is started we enter production mode where the default thread count is 25 threads instead.

  • Specifying  multiple classpath entries in manifest file

    HI all,
    I want to make one jar file executable so i have created the jar file with specifying manifest file including main-class & class-path.
    But my class-path is little over 75 bytes .There is restriction of entries should be only 70 lines.so jar file is not taking the last 6 bytes.
    I have specified multiple classpath entries but it is taking only last entiy only..
    How can i set the multiple class path entries in the manifest file?
    Thanks in Advance

    Classpath entries for a mainfest file should be other jar file names.
    Put them in the same or a sub directory as your main jar.
    See: http://java.sun.com/docs/books/tutorial/deployment/jar/downman.html

  • Multiple JSPs with JSR 168-compliant Java portlet

    Hi,
    I have an application with multiple JSPs that I'm trying to run in a portlet. Looks like a JSR 168 Java Portlet is the best way to do that. I want to avoid using proprietary PDK Portlet route.
    A few questions:
    1. Is there any sample of that available with multiple JSPs?
    2. More specifically, if I have a form element in one jsp, can I specify another JSP in the action element, or do I have to use an actionURL or renderURL?
    3. Also, how can I can debug my Java portlet from JDeveloper?
    Thanks.
    - Anupam

    Hi,<br>
    I'm building a JSR 168 Java portlet. I've been trying to pass params from my JSP using actionURL in my jsp, like so:<br><br>
    <FORM METHOD="POST" ACTION="<portlet:renderURL/>">
    <TABLE BORDER="0" CELLPADDING="4" CELLSPACING="0" BGCOLOR="#eeeeee">
    <TR>
    <TD ALIGN="right">
    <FONT FACE="Arial" SIZE="-1 ">User Name:</FONT>
    </TD>
    <TD>
    <INPUT NAME="userName" SIZE="12" MAXLENGTH="32">
    </TD>
    </TR>
    <TR>
    <TD>
    <INPUT NAME="action" SIZE="12" TYPE="hidden" value="Login">
    </TD>
    </TR>
    </TABLE>
    </FORM>
    <br><br>
    I find that in my processAction, I can see value of "action" parameter but not the value the user enters in the portlet for "userName".<br><br>
    Any idea why? I must be doing sthing wrong, dunno what.<br><br>
    Also, if I use renderURL instead of actionURL, I don't even see "action" getting passed. Is that expected?<br><br>
    Thanks

  • Execute queue for EJB

    Hi,
    We are working with weblogic 8.1. We have configured one Execute Queue for our
    EJB, and modified deployment desriptor weblogic-ejb-jar.xml using this queue.
    In our application we are using scheduler program(Quartz) to invoke this EJB,
    but the calls are not going in to this Execute queue, instead it goes to the default
    queue.
    But when i call EJB method from other client(different VM), calls goes through
    the execute queue.
    For your information, we haven't modified <enable-call-by-reference> tag, which
    means this option is set to default value false.
    Please let me know if i am missing something?
    Regards
    Naresh

    Hi,
    To assign an EJB object to a configured execute queue, use the new dispatch-policy element in weblogic-ejb-jar.xml.
    Ex : dispatch-policy>queue_name</dispatch-policy>
    If no dispatch-policy is specified, or the specified dispatch-policy refers to a nonexistent server execute thread pool, then the server's default execute thread pool is used instead.
    Go through the following links and find the information on this issue.
    http://e-docs.bea.com/wls/docs81/perform/AppTuning.html#1104273
    http://e-docs.bea.com/wls/docs81/ejb/DDreference-ejb-jar.html#dispatch-policy
    Regards
    Anilkumar kari

  • [javax.servlet.Filter] can i apply multiple jsp & servlet to a filter?

    i have try to applied multiple jsp page & it runs correctly.
    my descriptor is like this:
        <filter-mapping>
            <filter-name>AnonymousFilter</filter-name>
            <url-pattern>/user/a.jsp</url-pattern>     
            <url-pattern>/user/b.jsp</url-pattern>
            <url-pattern>/user/c.jsp</url-pattern>       
        </filter-mapping>now i want to add a servlet, but that filter is not executed...
    i have tried descriptor like this:
        <filter-mapping>
            <filter-name>AnonymousFilter</filter-name>
            <url-pattern>/user/a.jsp</url-pattern>     
            <url-pattern>/user/b.jsp</url-pattern>
            <url-pattern>/user/c.jsp</url-pattern>       
            <servlet-name>dServlet</servlet-name>
        </filter-mapping>and like this:
        <filter-mapping>
            <filter-name>AnonymousFilter</filter-name>
            <url-pattern>/user/a.jsp</url-pattern>     
            <url-pattern>/user/b.jsp</url-pattern>
            <url-pattern>/user/c.jsp</url-pattern>       
        </filter-mapping>
        <filter-mapping>
            <filter-name>AnonymousFilter</filter-name>
            <servlet-name>dServlet</servlet-name>
        </filter-mapping>both are not work...
    is the descriptor wrong? what is the correct descriptor?
    thank you.

    i forgot about dispatcher type...
    the servlet is accessed via FORWARD
    & i map the servlet to /WEB-INF/dServlet...
    it is wrong? but the servlet is accessible...
        <servlet-mapping>
            <servlet-name>dServlet</servlet-name>
            <url-pattern>/WEB-INF/dServlet</url-pattern>
        </servlet-mapping>the web.xml now is:
        <filter-mapping>
            <filter-name>AnonymousFilter</filter-name>
            <url-pattern>/user/a.jsp</url-pattern>     
        </filter-mapping>
        <filter-mapping>
            <filter-name>AnonymousFilter</filter-name>
            <url-pattern>/user/b.jsp</url-pattern>
        </filter-mapping>
        <filter-mapping>
            <filter-name>AnonymousFilter</filter-name>
            <url-pattern>/user/c.jsp</url-pattern>       
        </filter-mapping>
        <filter-mapping>
            <filter-name>AnonymousFilter</filter-name>
            <servlet-name>dServlet</servlet-name>
            <dispatcher>FORWARD</dispatcher>
        </filter-mapping>i put this inside the filter:
    System.out.println(System.out.println("Anonymous Filter > " + httpRequest.getRequestURI());& hopelessly when i access from a.jsp, b.jsp, c.jsp the filter do print in System.out. but not from servlet...
    someone please help me...

  • Multiple JSP's accessing the same thread

    I have multiple users calling multiple JSP's. I also now want to add in a connection pool, which is implemented as a Runnable (It's a thread). However, how do I set it up so that all of the JSP's get a reference to the same connection pool?
    I have done this in a Servlet, where I could have the connection pool constructed in the init() function, and then the Servlet kept a static reference to the pool. Then for each request, I pass the reference to the pool into the service() function of my supporting classes.
    How can I do this in JSP?

    There are few things.......
    I do not know which application server you are using , but almost all competitive application server provide the concept of connection pooling. You do not have to implement connection pooling yourself. And to get a handle to the connection from the pool is through JNDI namespace(as you do for EJB.)
    Now if you still want to do that yourself then, i can propose one way.
    1) Put a instance of the Java class which holds the connection pooling in the application scope.
    ie useBean= Yourclass scope="application"
    2) Now all the JSP's will be able to get to the same object.
    So Look for documentation for putting objects in different scope ie session, application etc.
    Srinivasan Ranganathan

  • How Can i specify multiple server names in rwservlet.properties  file?

    How Can i specify multiple server names in rwservlet.properties file without clustering?
    I am using oracle 10g Application server. we have 3 servers Repsvr1, RepSvr2 and RepSvr3. Now i need to configure rwservlet.properties file to point to these servers based on any running report. i got 3 keymap files with reports info.
    Sample entry in the key map file is:
    key1: server=Repsvr1 userid=xxx/yyy@dbname report=D:\Web\path1\path2\reports\Report1.rdf destype=cache desformat=PDF %*
    key2: server=Repsvr2 userid=xxx/yyy@dbname report=D:\Web\path1\path3\reports\Report2.rdf destype=cache desformat=PDF %*
    rwservlet.properties file letting me to enter only one servername. Even though i merged all 3 keymap files into 1, still i have the server name issue. If i leave the server to the default name still i am getting the below error.
    REP-51002: Bind to Reports Server Repsvr1 failed. However, i know the default rep_<servername> would be used incase we dont have SERVER=<value> parameter in the rwservlet.properties file.
    If i specify the servername in the rwservlet.properties file then only Repsvr1 reports are working fine and other 2 server reports are giving the same error like
    REP-51002: Bind to Reports Server <<Server Name>> failed.
    how can i configure the info which will work all 3 reports. 2 Port servers are invoking using oracle forms and report server is invoking using ASP pages.
    If i specify Server name & Key map file in rwservlet.properties one at a time, all the reports are working without any error, whenever i am trying to integrate all 3 to workable i am getting binding error. if i exclude the server from rwservlet.properties still i am getting the same error.

    My RELOAD_KEYMAP setting is YES only.As i said If i specify Server name & Key map file in rwservlet.properties one at a time, all the reports are working without any error.
    keymap file entries
    key1: server=Repsvr1 userid=xxx/yyy@dbname report=D:\Web\path1\path2\reports\Report1.rdf destype=cache desformat=PDF %*
    key2: server=Repsvr2 userid=xxx/yyy@dbname report=D:\Web\path1\path3\reports\Report2.rdf destype=cache desformat=PDF %*
    If i use http://server.domain:port/reports/rwservlet? cmdkey = key1 should bring the report from Repsvr1 and http://server.domain:port/reports/rwservlet? cmdkey = key2 should bring the report from Repsvr2, but i am getting an error from Repsvr2 saying that REP-51002: Bind to Reports Server repsvr2 failed.
    Only Servername Repsvr1 is in rwservlet.properties file. Now what is the best option to by pass the server from rwservlet.properties file and should be from keymap file. if i comment server name in rwservlet.properties file still i am getting REP-51002: Bind to Reports Server <<Server Name>> failed error for both keys.

  • How can I tell how long a request has been sitting on an execute queue?

    Is it possible to determine (in WL 8.1 and/or 10.3) how long an HTTP request has been sitting on the execute queue before being assigned to a servlet?
    Under heavy load, I'm finding that the caller times out by the time the servlet tries to write the response because the request has been waiting on the execute queue for too long. To prevent doing all the work to process the request, I want to be able to see how long the request has been waiting to determine whether it's worth processing the request.
    Currently I use the getExecuteThreadTotalCount() method in ExecuteQueueRuntimeMBean and assume that if the count is high, the request has probably been waiting for a while, but getting the actual time on the queue would be much better.
    Thanks.

    Further investigation and a bunch of speed tests later, I'm even more puzzled. Between 7 pm and 9pm this evening, download speed has been consistently at 112kb, except for the 1 in 10 occasions where it hits 1.5mb, for 30 or 40 seconds, before dropping back to 112kb.
    Does anyone have any ideas what is going on?
    thanks in advance
    Ben

  • Problem while assigning Servlet to Execute queue

    Hi,
    We implement a IMS S-CSCF on BEA container 2.2.
    A call for us may be several times reentrant. Meaning that for one call we have to handle at least three different dialogs but in major use cases, it will be 6 or 7 for our next deployment.
    We are currently facing to bottlenecks problems and BEA support advised me to try to check if assigning servelt to execute queue could improve the preformances.
    I just wanted to make a try with one of our servlet but I have an exception java.lang.NoClassDefFoundError: org/jaxen/JaxenException.
    Here is what I did:
    In web.xml I have:
    <web-app>
    <distributable/>
    <servlet>
    <servlet-name>register</servlet-name>
    <servlet-class>com.netcentrex.scscf.registrar.RegistrarServlet</servlet-class>
    <init-param>
    <param-name>wl-dispatch-policy</param-name>
    <param-value>REGISTRARQueue</param-value>
    </init-param>
    <load-on-startup/>
    </servlet>
    <listener>
    <listener-class>com.bea.wcp.sip.engine.server.ContextEventHook</listener-class>
    </listener>
    </web-app>
    In sip.xml I have:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE sip-app
    PUBLIC "-//Java Community Process//DTD SIP Application 1.0//EN"
    "http://www.jcp.org/dtd/sip-app_1_0.dtd">
    <sip-app>
    <display-name>SIP Servlet based Registrar</display-name>
    <distributable/>
    <context-param>
    <param-name>usc.configFile</param-name>
    <param-value>/etc/neotip/usc.ini</param-value>
    </context-param>
    <context-param>
    <param-name>icscf.configFile</param-name>
    <param-value>/etc/neotip/icscf.ini</param-value>
    </context-param>
    <context-param>
    <param-name>usc.dnsSrvFile</param-name>
    <param-value>/etc/neotip/uscDnsSrv.cache</param-value>
    </context-param>
    <listener>
         <listener-class>com.netcentrex.scscf.session.SessionServlet</listener-class>
    </listener>
    <servlet>
    <servlet-name>register</servlet-name>
    <servlet-class>com.netcentrex.scscf.registrar.RegistrarServlet</servlet-class>
    <load-on-startup/>
    </servlet>
    <servlet>
         <servlet-name>session</servlet-name>
         <servlet-class>com.netcentrex.scscf.session.SessionServlet</servlet-class>
         <load-on-startup/>
    </servlet>
    <servlet>
         <servlet-name>route</servlet-name>
         <servlet-class>com.netcentrex.scscf.fork.RouteServlet</servlet-class>
         <load-on-startup/>
    </servlet>
    <servlet>
         <servlet-name>icscf</servlet-name>
         <servlet-class>com.netcentrex.scscf.embeddedI.IEmbeddedServlet</servlet-class>
         <load-on-startup/>
    </servlet>
    <servlet-mapping>
    <servlet-name>register</servlet-name>
    <pattern>
    <equal>
         <var>request.method</var>
         <value>REGISTER</value>
    </equal>
    </pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>session</servlet-name>
    <pattern>
         <and>
              <not>
              <equal>
                        <var>request.method</var>
                        <value>REGISTER</value>
              </equal>
              </not>
              <not>
         <exists>
                   <var>request.uri.param.uscroute</var>
              </exists>
              </not>
              <not>
         <exists>
                   <var>request.uri.param.icscfroute</var>
              </exists>
              </not>
         </and>
    </pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>route</servlet-name>
    <pattern>
         <and>
              <not>
              <equal>
                        <var>request.method</var>
                        <value>REGISTER</value>
              </equal>
              </not>
              <exists>
              <var>request.uri.param.uscroute</var>
         </exists>
         </and>
    </pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>icscf</servlet-name>
    <pattern>
         <and>
              <not>
              <equal>
                        <var>request.method</var>
                        <value>REGISTER</value>
              </equal>
              </not>
              <exists>
         <var>request.uri.param.icscfroute</var>
         </exists>
         </and>
    </pattern>
    </servlet-mapping>
    <session-config>
         <session-timeout>30</session-timeout>
    </session-config>
    </sip-app>
    In msi-config.xml, we have:
    <Server Cluster="BEA_ENGINE_TIER_CLUST" EnabledForDomainLog="false"
    ListenAddress="192.168.150.26" ListenPort="8001" Name="engine1"
    NativeIOEnabled="true" NetworkAccessPoints="sipchannel"
    ServerVersion="8.1.5.0" StdoutDebugEnabled="true"
    StdoutEnabled="true" StdoutSeverityLevel="64">
    <NetworkAccessPoint ListenAddress="192.168.150.34"
    ListenPort="5060" Name="sipchannel" Protocol="sip"
    PublicAddress="192.168.150.34" SourcePorts="41000-42000"/>
    <SSL Enabled="false" IdentityAndTrustLocations="KeyStores" Name="engine1"/>
    <Log FileCount="10" FileMinSize="60000" Name="engine1" NumberOfFilesLimited="true"/>
    <ExecuteQueue Name="sip.transport.Default" QueueLength="2048" ThreadCount="25"/>
    <ExecuteQueue Name="REGISTRARQueue" QueueLength="2048" ThreadCount="25"/>
    <ExecuteQueue Name="sip.transport.Default" QueueLength="2048" ThreadCount="25"/>
    <ExecuteQueue Name="weblogic.kernel.Default"/>
    <ExecuteQueue Name="sip.timer.Default" QueueLength="2048" ThreadCount="25"/>
    <ExecuteQueue Name="sip.tracing.local" QueueLength="1024"
    ThreadCount="1" ThreadsMaximum="1" ThreadsMinimum="1"/>
    <ExecuteQueue Name="sip.tracing.domain" QueueLength="1024"
    ThreadCount="1" ThreadsMaximum="1" ThreadsMinimum="1"/>
    </Server>
    Then when I launch a SIP REGISTRATION operation I get the following trace:
    2007-05-30 17:37:03,649 ERROR RegistrarServlet [ExecuteThread: '23' for queue: 'sip.transport.Default'] : Error while processing request: REGISTER sip:netcentrexbench.net SIP/2.0
    P-Charging-Vector: icid-value=AyretyU0dm+1970294253=0465138796
    P-Access-Network-Info: ADSL;dsl-location="netcentrexbench.net;1.2.3.4"
    CSeq: 2 REGISTER
    Call-ID: [email protected]
    Supported: path
    Via: SIP/2.0/UDP 192.168.254.56:5063;branch=z9hG4bK-19606-1-2
    From: dench0 <sip:[email protected]>;tag=1
    Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO
    To: dench0 <sip:[email protected]>
    Authorization: Digest username="dench0",realm="netcentrexbench.net",cnonce="6b8b4567",nc=00000001,qop=auth,uri="sip:192.168.150.34:5060",nonce="NQei3RIBAAA=le+kkCcrZcahXxQ7M6r7dw==",response="b824a93822b267ddfaa07f4039d99d95",algorithm=MD5
    Content-Length: 0
    Contact: sip:[email protected]:5063
    User-Agent: LYNX_BENCH
    Path: <sip:[email protected]:5063;lr>
    Require: path
    Expires: 36000
    Max-Forwards: 70
    java.lang.NoClassDefFoundError: org/jaxen/JaxenException
    at org.dom4j.DocumentFactory.createXPath(DocumentFactory.java:230)
    My first doubt is that I think I should get "ERROR RegistrarServlet [ExecuteThread: '23' for queue: 'REGISTRARQueue'] " instead of "ERROR RegistrarServlet [ExecuteThread: '23' for queue: 'sip.transport.Default'] "
    First question: did I miss something or did something wrong in the configuration?
    Second question: is it really possible to assign a single servlet (from an application containing many other servlets) to a dediacted execute queue?
    Third question: any help is welcome :-)
    Thanks in advance,
    Lionel,

    At teh end I found the basic :-) problem on my exception but anyway , the used execute queue for REGISTER is always sip.transport.default
    Help on this point is welcome!
    Thanks

  • Problem in assigning the execute queue to EJB.

    I have a enterprise application in that a have many web application.I want to assign
    the low priority threads to one web application e.g. "A". The "A" is using one
    ejb to execute the some task.
    I am making a execute queue with name let "TestQueue"
    and assigning it to my servlet thru these entries in
    weblogic-ejb-jar :-
    <weblogic-enterprise-bean>
    <ejb-name>InferenceEngine</ejb-name>
    <reference-descriptor>
    <resource-description>
    <res-ref-name>jdbc/MyDB</res-ref-name>
    <jndi-name>jdbc/MyDB</jndi-name>
    </resource-description>
    </reference-descriptor>
    <jndi-name>ejb/InferenceEngine</jndi-name>
    <dispatch-policy>TestQueue</dispatch-policy>
    </weblogic-enterprise-bean>
    Here is my code of config.xml file for execute queue.
    <?xml version="1.0" encoding="UTF-8"?>
    <Domain ConfigurationVersion="8.1.0.0" Name="ACM_1">
    <Server ListenAddress="" ListenPort="8003" Name="ACM"
    NativeIOEnabled="true" ReliableDeliveryPolicy="RMDefaultPolicy" ServerVersion="8.1.1.0">
    <SSL Enabled="false" HostnameVerificationIgnored="false"
    IdentityAndTrustLocations="KeyStores" Name="ACM"/>
    <ExecuteQueue Name="TestQueue" ThreadPriority="1"/>
    </Server>
    I tried the ejbc command line argument -dispatchPolicy TestQueue also. But it
    is also not sending request to my TestQueue.

    One thing to note is the execute queue is chosen when the request enters
    the server. So if a webapp is assigned to Queue-1 and an ejb to
    Queue-2, and the webapp calls the ejb, the request will remain on queue-1.
    -- Rob
    Sunil Kumar Mehta wrote:
    I have a enterprise application in that a have many web application.I want to assign
    the low priority threads to one web application e.g. "A". The "A" is using one
    ejb to execute the some task.
    I am making a execute queue with name let "TestQueue"
    and assigning it to my servlet thru these entries in
    weblogic-ejb-jar :-
    <weblogic-enterprise-bean>
    <ejb-name>InferenceEngine</ejb-name>
    <reference-descriptor>
    <resource-description>
    <res-ref-name>jdbc/MyDB</res-ref-name>
    <jndi-name>jdbc/MyDB</jndi-name>
    </resource-description>
    </reference-descriptor>
    <jndi-name>ejb/InferenceEngine</jndi-name>
    <dispatch-policy>TestQueue</dispatch-policy>
    </weblogic-enterprise-bean>
    Here is my code of config.xml file for execute queue.
    <?xml version="1.0" encoding="UTF-8"?>
    <Domain ConfigurationVersion="8.1.0.0" Name="ACM_1">
    <Server ListenAddress="" ListenPort="8003" Name="ACM"
    NativeIOEnabled="true" ReliableDeliveryPolicy="RMDefaultPolicy" ServerVersion="8.1.1.0">
    <SSL Enabled="false" HostnameVerificationIgnored="false"
    IdentityAndTrustLocations="KeyStores" Name="ACM"/>
    <ExecuteQueue Name="TestQueue" ThreadPriority="1"/>
    </Server>
    I tried the ejbc command line argument -dispatchPolicy TestQueue also. But it
    is also not sending request to my TestQueue.

Maybe you are looking for

  • Color Laser Printer: CMYK ink percentage

    Hello, I'm buying a CMYK Color Laser Printer/Copier, and I would like to estimate the cost per print/copy. The manufacturer of the printer claims that each toner allows the user to print 25,000 sheets in A4 format, at 5% coverage. Yes, you read it ri

  • Problem in printing multiple main window in smartforms

    Hi Experts, I have requirement form client to print PO which consists of 4 page. First page is cosists of header and some text. In second page different header and line item. Thirs page different header and line item. 4th page different header and li

  • Burning directly to DVD from FCPX fails ...

    When I try and burn from Final Cut Pro X there is no share monitor and it just processes and then does nothing.

  • Transfer of music to iPad

    How can I transfer my music files from my iPod touch to my iPad? Thanks

  • Can't play video on device

    hi. I have written a Flash lite application for an N80 that plays video from a URL in 3gp format.Everything works well on the emulator but when I run it on the device i get the error message - error preparing video for playing. I copied the video fil