Proxing servlet's via Nsapi (NES bridge)

Is there any way other than 'ppath' to proxy requests to a servlet in
WLv5.1-sp3, via the Nsapi in either Nes 3.6 or 4.0? The environment is all
Solaris.
It doesn't seem that mime types would work, being as there isn't a file
suffix (i.e. JSP, jhtml, etc.) to proxy.
Thanks in advance.
Pat Power
Context Integration NY

Sorry, the answer then is that while there are other ways to proxy (say
name-trans) we only support ppath and extension.
cheers
mbg
In article <[email protected]>, [email protected] says...
Mark, thanx for your response. We've been thru those docs and they didn't
seem to answer our question.
If you have a mime type with an extension like Jsap or Jhml, no problem.
This is html talking to a servlet class file back on the server. You
can't proxy a class file by extension, that I'm aware of.
Mark Griffith <[email protected]> wrote in message
news:[email protected]..
It is in the docs.
http://www.weblogic.com/docs51/admindocs/nsapi.html
Proxy by file extension
mbg
In article <396366e9$[email protected]>, [email protected] says...
Is there any way other than 'ppath' to proxy requests to a servlet in
WLv5.1-sp3, via the Nsapi in either Nes 3.6 or 4.0? The environment is
all
Solaris.
It doesn't seem that mime types would work, being as there isn't a file
suffix (i.e. JSP, jhtml, etc.) to proxy.
Thanks in advance.
Pat Power
Context Integration NY
==================================================
NewsGroup Rant
==================================================
Rant 2.
Many of the answers to your questions are in the
documentation. At the top of our online docs is
a search button. Try it!
==================================================
NewsGroup Rant
==================================================
Rant 1.
The less info you provide about your problem means
the less we can help you. Try to look at the
problem from an external perspective and provide
all the data necessary to put your problem in
perspective.

Similar Messages

  • Proxing servlet's via Nsapi ?

    Is there any way other than 'ppath' to proxy requests to a servlet in
    WLv5.1-sp3, via the Nsapi in either Nes 3.6 or 4.0? The environment is all
    Solaris.
    It doesn't seem that mime types would work, being as there isn't a file
    suffix (i.e. JSP, jhtml, etc.) to proxy.
    Thanks in advance.
    Pat Power
    Context Integration NY

    All you need to do is add the mapping from text/jsp to the jsp extension to the
    mime.types file (same directory as obj.conf).
    Patrick Power wrote:
    Is there any way other than 'ppath' to proxy requests to a servlet in
    WLv5.1-sp3, via the Nsapi in either Nes 3.6 or 4.0? The environment is all
    Solaris.
    It doesn't seem that mime types would work, being as there isn't a file
    suffix (i.e. JSP, jhtml, etc.) to proxy.
    Thanks in advance.
    Pat Power
    Context Integration NY

  • Output page is not completed via NSAPI cluter

    I have two Netscape web servers installed NSAPI and configured as
              cluster mode.
              Besides WebLogicCluster parameter,
              I have following
              ConnectTimeoutSecs=20
              ErrorPage=error.html
              And, I experience the output HTML is not completed sometime.
              Does anyone experience this kind of problem?
              How to fix it?
              Thanks,
              Alex
              

    I have encountered a similar bug with the NSAPI proxy product. It is a
              documented bug that has yet to be fixed. Our applications uses RMI and if an
              RMI call takes too long to complete the HTML page returns incomplete. This may
              be what you are seeing. You will only see this if your web browser is using
              HTTP 1.1. The problem is the WLS is using HTTP 1.0 and by default the
              NES/NSAPI proxy uses HTTP 1.1. If the client web browser is using HTTP 1.0
              then the NES/NSAPI will fall back to the HTTP 1.0 protocol and everything is
              happy. Good luck if this your problem. The only solution so far is to use WLS
              as the HTTP server ( i.e. buy more licenses ).
              Alex Peng wrote:
              > Prasad,
              >
              > I have all of pages created by WebLogic.
              >
              > Alex
              >
              > Prasad Peddada wrote:
              >
              > > Alex,
              > >
              > > Who is serving the html pages. NES or WL? As far configuring with
              > > proxy I would let NES handle the html requests and let Wl servers handle
              > > the jsp, servlets and jhtml.
              > >
              > > Prasad
              > >
              > > Alex Peng wrote:
              > >
              > > > I have two Netscape web servers installed NSAPI and configured as
              > > > cluster mode.
              > > > Besides WebLogicCluster parameter,
              > > > I have following
              > > > ConnectTimeoutSecs=20
              > > > ErrorPage=error.html
              > > >
              > > > And, I experience the output HTML is not completed sometime.
              > > >
              > > > Does anyone experience this kind of problem?
              > > > How to fix it?
              > > >
              > > > Thanks,
              > > >
              > > > Alex
              

  • How to access servlet only via specific port?

    Hi all,
    I have an app with 2 servlets, I want each servlet to be accessible via a different port.
    so I open HTTP on my web server, on port 80 and 18080, but now BOTH servlets are available via BOTH ports.
    how can I make sure that servlet 1 is accessible only via port 80, and servlet2 is only accessible via port 18080?
    tnx

    Run two servers.

  • "No Internet Connection" via AirPort Extreme bridged to Time Capsule

    Hello,
    We have a fairly large and odd home network consisting of a Comcast cable modem connected to a Netgear router, a Time Capsule wired to that one floor down (serving up WiFi and DHCP), and a new AirPort Extreme wired one floor below that, extending the WiFi network of the Time Capsule and set to bridge mode.
    On one MacBook Pro (and possibly others, haven't had them available to test yet), trying to connect to WiFi while downstairs (i.e. to the AirPort Extreme) yields a strong wireless connection, but "no Internet connection"; checking via network diagnostics or the Network panel reveals that the MacBook Pro has no IP address. This seems odd, as it happens even if the connection is first made on the 2nd floor to the Time Capsule, where a valid IP is retrieved, and then carried downstairs; even though the same IP address should be valid, the laptop's WiFi menubar icon starts cycling again and eventually shows the "!" and reports no Internet connection.  Checking the Network panel reveals no IP address via DHCP.  However, if I let it sit for a minute or two, the IP address comes back (the same one!) and all is well, at least for a while.
    I've tried switching to a manually-assigned static IP as a workaround, and that works perfectly well, but I'd like to get DHCP working properly if I can, for convenience's sake. Is there any reason why I should be having trouble with getting DHCP from the Time Capsule via the AirPort Extreme?

    Actually, yeah, my predecessor explained that he was running DHCP on the Time Capsule instead of the Netgear because he hadn't needed DHCP prior to the adding of a WiFi point (all other nodes were on Ethernet), so it had always been turned off on the Netgear. But your suggestion makes a lot more sense, of course, so I've put the Time Capsule into bridge mode as well and started the DHCP server on the Netgear. Seems to be working with my iPhone, though that was always working okay. I won't have access to the laptop to test it until later this afternoon, but I have high hopes. 
    Thank you!

  • AirPort Utility Can't See Extreme via Non-Apple Bridge

    I have an Apple AirPort Extreme Base Station serving my network. Connected to the APExtreme I have a non-Apple brand wi-fi router that's in bridge mode so that a few devices in another room can still get wired network and the upstairs section of the house that's too far from the AirPort can get Wi-Fi via the non-Apple router's Wi-Fi.
    It all works fine and speeds are fast. However, my MacBook Pro is one of the devices hooked up to the non-Apple via wired Ethernet. When I open the AirPort Utility it doesn't see the APEXtreme.
    Is this as expected or should it still be able to find the AirPort through the Bridge? If the latter is true, what's keeping mine from seeing it? Any suggestions?

    kpurcell wrote:
    I have an Apple AirPort Extreme Base Station serving my network. Connected to the APExtreme I have a non-Apple brand wi-fi router that's in bridge mode so that a few devices in another room can still get wired network and the upstairs section of the house that's too far from the AirPort can get Wi-Fi via the non-Apple router's Wi-Fi.
    You need to spell out the connection.. is this non-apple device connected by ethernet or is it a universal wireless repeater/bridge.
    What is the make and model of the box that is acting as repeater.. also if 3rd party firmware tell us clearly what you are running.
    In most wireless repeater, client bridge setups you have a big problem.. as all clients behind the repeater look like the same device to the main AE. It cannot tell what is who.. and is also likely to have bonjour issues.. which is essential for things like airport utility to work.
    It all works fine and speeds are fast. However, my MacBook Pro is one of the devices hooked up to the non-Apple via wired Ethernet. When I open the AirPort Utility it doesn't see the APEXtreme.
    Try a manual access. Find the IP of the AE.. from something that is plugged into it.. if normal default router mode it will show, 10.0.1.1
    In airport utility have you
    1. Changed over to ethernet.. nothing will show without doing this.. it always defaults to wireless. In an extremely odd way ethernet devices are shown under Other Wi-Fi Devices.. isn't that completely obvious!!
    2. Ensure you have ipv6 set on ethernet to link-local only.
    3. If nothing shows up do it even more manually and type in the address you already discovered.
    No password is needed if defaults.. but also type in your access password if you changed it.
    You should then get the full summary screen.

  • Secure the ADF pages in portlet via ADF portlet bridge

    Hi All
    My project is using the ADF security model to do the authentication and authorization and the project can be deploy to weblogic and works fine.
    Currently i want o extend the pages and taskflows to WebCenter portlet client via the ADF portlet bridge. How can i implement the security policy
    to reuse the existing code? i have no idea how the portlet client interactively work with producer to do the authentication.
    appreciated if anyone can give a hand on this or show some examples.

    Could you tell me how you were able to combine an adf-table bound to BC with a portlet in the same page? I'm getting a 'portlet unavailable exception' when I try to customize my RichTextPortlet?
    If I run the portlet on it's own in a jspx-document everything runs just fine, but from the moment you add an adf-component the portlet is unavailable?

  • Unable to install products via CCM because Bridge is running in the background

    asked to close Bridge.exe to complete download. Bridge was not open and can't find bridge.exe on search. Solution?

    I'm moving this thread over to our download/installation forum.
    For general Creative Cloud Membership questions, here is the FAQ link:
    http://www.adobe.com/products/creativecloud/faq.html
    -Dave

  • RFC (Sync) - File (async) always via s/a Bridge?

    Hi,
    maybe a silly question, but do I always have to use the s/a Bridge when I have a sync. RFC sender and a async receiver? Is there another possibility without bpm (well using a async RFC of course)?
    Thank you
    Thomas

    Hey Thomas..
    well the concept of BPM comes, only when u have a syn/asyn communication...
    when u say a RFC, which is a async, u need to have a BPM as the file is an Async.
    also, if u just want to put the data in R3(say), then u have the scenario FTP to IDOC , wherin u dont get any response and no BPM required...
    hope it clears some of ur doubt on BPM...
    regards..
    vishal

  • Connecting 2 WLS 7 servers via the Messaging Bridge

    Hi,
              I am trying to use the messaging bridge to post messages received on a
              source JMS queue running in one WLS instance to a destination queue running
              on another target WLS instance. I have followed the instructions in the
              admin guide and performed the following:
              - defined in the source WLS instance 2 JMS bridge destinations - one for the
              source queue and one for the target queue
              - defined the bridge between the 2 destination, using the jms-xa-adp.rar
              - deployed the jmx-xa-adp.rar adapter to the source WLS instance
              - enabled the XA connection factory (had to define a new connection factory
              to do this)
              - made sure that both WLS instances have the system user configured with the
              same password
              When the source WLS instance starts up, the following is logged to the
              console:
              weblogic.jms.common.JMSException: Connection not found
              at
              weblogic.jms.dispatcher.InvocableManager.invocableFind(InvocableManager.java
              :134)
              at
              weblogic.jms.dispatcher.Request.wrappedFiniteStateMachine(Request.java:592)
              at
              weblogic.jms.dispatcher.DispatcherImpl.dispatchSync(DispatcherImpl.java:275)
              at
              weblogic.jms.client.JMSConnection.createSession(JMSConnection.java:368)
              at
              weblogic.jms.client.JMSXAConnection.createXAQueueSession(JMSXAConnection.jav
              a:75)
              at
              weblogic.jms.adapter.JMSBaseConnection.startInternal(JMSBaseConnection.java:
              257)
              at
              weblogic.jms.adapter.JMSBaseConnection.start(JMSBaseConnection.java:215)
              at
              weblogic.jms.adapter.JMSManagedConnectionFactory.createManagedConnection(JMS
              ManagedConnectionFactory.java:1
              at
              weblogic.connector.common.internal.ConnectionPool.makeResources(ConnectionPo
              ol.java:1002)
              at
              weblogic.connector.common.internal.ConnectionPool.getConnection(ConnectionPo
              ol.java:1777)
              at
              weblogic.connector.common.internal.ConnectionPoolManager.getConnection(Conne
              ctionPoolManager.java:190)
              at
              weblogic.connector.common.internal.ConnectionManagerImpl.allocateConnection(
              ConnectionManagerImpl.java:25)
              at
              weblogic.jms.adapter.JMSBaseConnectionFactory.getTargetConnection(JMSBaseCon
              nectionFactory.java:126)
              at
              weblogic.jms.bridge.internal.MessagingBridge.getConnections(MessagingBridge.
              java:753)
              at
              weblogic.jms.bridge.internal.MessagingBridge.execute(MessagingBridge.java:91
              9)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
              and any messages sent to the source queue just sit there.
              What might I be missing? Am I correct that the configuration of the bridge
              and destinations takes place at the source WLS instance (as this is posting
              the messages to the target WLS) - the documentation seems to me a bit
              ambiguous in this regard.
              Thanks,
              Stanley.
              

    I am afraid that you'll have to enable security interoperability for
              the bridge to work across two domains. Making the password for
              system user is not enough. You have to disable generated credential
              for both domains. For details, please look at the following link:
              http://edocs.bea.com/wls/docs70/adminguide/msgbridge.html#1078380
              Please also note that this requirement has been removed in 8.1 release and
              7.0SP3.
              Thanks
              Dongbo
              Stanley Beamish wrote:
              > "Dongbo Xiao" <[email protected]> wrote in message
              > news:[email protected]...
              > > I suspect that the two WebLogic servers have the same name.
              > > There are some naming restrictions in the WLS configuration.
              > > Please take a look at the following link.
              > > http://e-docs.bea.com/wls/docs70/adminguide/msgbridge.html#1076982
              > >
              > > Dongbo
              >
              > OK, I've changed the name of one of the servers and I can get further. But
              > now I get the following exception on the server that hosts the bridge,
              > relating to permissions. Both servers use the same system password.
              >
              > Thanks,
              > SB
              >
              > java.lang.SecurityException: Invalid Subject: principals=[system,
              > Administrators, Operators, Monitors, Deployers]
              > at
              > weblogic.security.service.SecurityServiceManager.seal(SecurityServiceManager
              > .java:993)
              > at
              > weblogic.security.service.RoleManager.getRoles(RoleManager.java:277)
              > at
              > weblogic.security.service.AuthorizationManager.isAccessAllowed(Authorization
              > Manager.java:589)
              > at weblogic.jms.JMSService.checkPermission(JMSService.java:1064)
              > at weblogic.jms.JMSService.checkRecvPermission(JMSService.java:1076)
              > at
              > weblogic.jms.frontend.FESession.consumerCreate(FESession.java:944)
              > at weblogic.jms.frontend.FESession.invoke(FESession.java:2252)
              > at
              > weblogic.jms.dispatcher.Request.wrappedFiniteStateMachine(Request.java:602)
              > at
              > weblogic.jms.dispatcher.DispatcherImpl.dispatchSync(DispatcherImpl.java:275)
              > at
              > weblogic.jms.client.JMSSession.consumerCreate(JMSSession.java:1592)
              > at
              > weblogic.jms.client.JMSSession.createConsumer(JMSSession.java:1452)
              > at
              > weblogic.jms.client.JMSSession.createReceiver(JMSSession.java:1302)
              > at
              > weblogic.jms.adapter.JMSBaseConnection.setMessageListenerInternal(JMSBaseCon
              > nection.java:931)
              > at
              > weblogic.jms.adapter.JMSBaseConnection.setMessageListener(JMSBaseConnection.
              > java:885)
              > at
              > weblogic.jms.adapter.JMSConnectionHandle.setMessageListener(JMSConnectionHan
              > dle.java:121)
              > at java.lang.reflect.Method.invoke(Native Method)
              > at
              > weblogic.connector.common.internal.ConnectionWrapper.invoke(ConnectionWrappe
              > r.java:101)
              > at $Proxy103.setMessageListener(Unknown Source)
              > at
              > weblogic.jms.bridge.internal.MessagingBridge.beginForwarding(MessagingBridge
              > .java:862)
              > at
              > weblogic.jms.bridge.internal.MessagingBridge.execute(MessagingBridge.java:94
              > 2)
              > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
              > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:189)
              >
              > >
              > > Stanley Beamish wrote:
              > >
              > > > Hi,
              > > >
              > > > I am trying to use the messaging bridge to post messages received on a
              > > > source JMS queue running in one WLS instance to a destination queue
              > running
              > > > on another target WLS instance. I have followed the instructions in the
              > > > admin guide and performed the following:
              > > >
              > > > - defined in the source WLS instance 2 JMS bridge destinations - one for
              > the
              > > > source queue and one for the target queue
              > > > - defined the bridge between the 2 destination, using the jms-xa-adp.rar
              > > > - deployed the jmx-xa-adp.rar adapter to the source WLS instance
              > > > - enabled the XA connection factory (had to define a new connection
              > factory
              > > > to do this)
              > > > - made sure that both WLS instances have the system user configured with
              > the
              > > > same password
              > > >
              > > > When the source WLS instance starts up, the following is logged to the
              > > > console:
              > > >
              > > > weblogic.jms.common.JMSException: Connection not found
              > > > at
              > > >
              > weblogic.jms.dispatcher.InvocableManager.invocableFind(InvocableManager.java
              > > > :134)
              > > > at
              > > >
              > weblogic.jms.dispatcher.Request.wrappedFiniteStateMachine(Request.java:592)
              > > > at
              > > >
              > weblogic.jms.dispatcher.DispatcherImpl.dispatchSync(DispatcherImpl.java:275)
              > > > at
              > > > weblogic.jms.client.JMSConnection.createSession(JMSConnection.java:368)
              > > > at
              > > >
              > weblogic.jms.client.JMSXAConnection.createXAQueueSession(JMSXAConnection.jav
              > > > a:75)
              > > > at
              > > >
              > weblogic.jms.adapter.JMSBaseConnection.startInternal(JMSBaseConnection.java:
              > > > 257)
              > > > at
              > > > weblogic.jms.adapter.JMSBaseConnection.start(JMSBaseConnection.java:215)
              > > > at
              > > >
              > weblogic.jms.adapter.JMSManagedConnectionFactory.createManagedConnection(JMS
              > > > ManagedConnectionFactory.java:1
              > > > )
              > > > at
              > > >
              > weblogic.connector.common.internal.ConnectionPool.makeResources(ConnectionPo
              > > > ol.java:1002)
              > > > at
              > > >
              > weblogic.connector.common.internal.ConnectionPool.getConnection(ConnectionPo
              > > > ol.java:1777)
              > > > at
              > > >
              > weblogic.connector.common.internal.ConnectionPoolManager.getConnection(Conne
              > > > ctionPoolManager.java:190)
              > > > at
              > > >
              > weblogic.connector.common.internal.ConnectionManagerImpl.allocateConnection(
              > > > ConnectionManagerImpl.java:25)
              > > > at
              > > >
              > weblogic.jms.adapter.JMSBaseConnectionFactory.getTargetConnection(JMSBaseCon
              > > > nectionFactory.java:126)
              > > > at
              > > >
              > weblogic.jms.bridge.internal.MessagingBridge.getConnections(MessagingBridge.
              > > > java:753)
              > > > at
              > > >
              > weblogic.jms.bridge.internal.MessagingBridge.execute(MessagingBridge.java:91
              > > > 9)
              > > > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:213)
              > > >
              > > > and any messages sent to the source queue just sit there.
              > > >
              > > > What might I be missing? Am I correct that the configuration of the
              > bridge
              > > > and destinations takes place at the source WLS instance (as this is
              > posting
              > > > the messages to the target WLS) - the documentation seems to me a bit
              > > > ambiguous in this regard.
              > > >
              > > > Thanks,
              > > > Stanley.
              > >
              [att1.html]
              

  • Help connecting emac to Router via Belkin Wireless Bridge FSD7330

    Dear All,
    I've been given an old emac without an Airport card and would like to connect it to my Netgear WGR614v9 wireless router which I run two XP laptops through.
    I've been told that I need a wireless bridge so have bought the Belkin FSD7330. Unfortunately there appears to be no mac software or drivers with either installation cd, despite the manufacturers saying they'll work with macs and I'm out of ideas...
    The emac connects fine to the internet when hardwired to the router but won't seem to pick up the router or bridge wirelessly... Can anyone give me an idiots guide on how to get started please?
    Any help gratefully received! Many thanks

    Hello,
    As Allan already indicated, no special software is needed for a (configured) wireless Ethernet bridge; you can use it with a Mac or a PC.
    There are different versions of the F5D7330 (one or two antennas; colour). Various variants are mentioned at Belkin's UK support centre web site.
    Have a look at this web page regarding firmware. For example, the 1.00.09 version will update applicable units sold with only WEP security to WPA (the use of which is a good idea). You will need a PC to carry out firmware updates.
    Generally speaking, do not run any (PC) setup wizard software from a supplied CD. Instead, make use of the web-based interface. You should be able to run a browser on a Mac or a PC, but the pages may not look the same everywhere (if there is a problem with one browser, try another).
    If necessary, a manual can be downloaded from the support centre. Use the instructions for setting up the F5D7330 wireless Ethernet bridge in an "infrastructure" mode. The security configuration page displayed after a firmware update (to WPA) may differ a bit from the information in the manual. WPA is normally easier to set up than WEP.
    Jan

  • Applet Servlet communication via serialization

    I serialized an object containing a JTable to and from a file
    without any problem.
    Now I ran the same serialization over the net from servlet to
    applet and get now a security exception. The table data are
    simple Strings.
    If i remove the JTable from the serialized object the communicaton
    works fine.
    I use the DefaultTableModel.

    Sorry for the delay.
    Here is the stack trace of my error message ( a bit truncated ) :
    perhaps the line marked bold is somewhat responsible.
    Is there a way to deactivate this EventListenerList ?
    What is it used for ?
    I get the error even if I only instantiate an empty table ( without any explicit model ).
    java.security.AccessControlException: access denied (java.lang.RuntimePermission accessClassInPackage.sun.swing.table)
         at java.security.AccessControlContext.checkPermission(Unknown Source)
         at java.security.AccessController.checkPermission(Unknown Source)
         at java.lang.SecurityManager.checkPermission(Unknown Source)
         at java.lang.SecurityManager.checkPackageAccess(Unknown Source)
         at sun.plugin2.applet.Applet2SecurityManager.checkPackageAccess(Unknown Source)
         at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
         at java.lang.ClassLoader.loadClass(Unknown Source)
         at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
         at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
         at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
         at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
         at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
         at java.lang.ClassLoader.loadClass(Unknown Source)
         at java.lang.Class.forName0(Native Method)
         at java.lang.Class.forName(Unknown Source)
         at java.io.ObjectInputStream.resolveClass(Unknown Source)
         at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
         at java.io.ObjectInputStream.readClassDesc(Unknown Source)
         at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
         at java.io.ObjectInputStream.readObject0(Unknown Source)
         at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
         at java.io.ObjectInputStream.readSerialData(Unknown Source)
         at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
         at java.io.ObjectInputStream.readObject0(Unknown Source)
         at java.io.ObjectInputStream.readObject(Unknown Source)
         at javax.swing.event.EventListenerList.readObject(Unknown Source)
         at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
         at java.io.ObjectInputStream.readSerialData(Unknown Source)
         at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
         at java.io.ObjectInputStream.readObject0(Unknown Source)
         at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
         at java.io.ObjectInputStream.readSerialData(Unknown Source)
         at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
         at java.io.ObjectInputStream.readObject0(Unknown Source)
         at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
         at java.io.ObjectInputStream.defaultReadObject(Unknown Source)
         at javax.swing.JTable.readObject(Unknown Source)

  • Delays in applet-servlet communication via serialization

    The application that I am developing requires the applet to communicate with a servlet. It works fine except that it seems to send the data in spurts. The servlet seems to wait for good time before it sends out the next batch. It also seems that the batch is defined by the amount of data collected before the final write. This is inspite of flushing data and reseting the stream after every write.
    Please advise what could be done to solve this problem. I have added the detailed description below.
    DESCRIPTION
    APPLET
    The applet opens a ObjectInput Stream (HTTP Tunneling) over the URLConnection and waits for Objects to come to it on a separate thread . I receive the objects and put them in a queue to ensure quick reading from the stream.
    Relevant Code:
    try{
    URL serveletURL = new URL( baseURL + cduURL);
    System.out.println(" URL is " + serveletURL);
    cduCtrlConn = (HttpURLConnection ) serveletURL.openConnection();
    cduCtrlConn.setUseCaches(false);
    cduCtrlConn.setDoInput(true);
    inStream = new ObjectInputStream(
    new BufferedInputStream(cduCtrlConn.getInputStream()));
    catch (Exception ex) {
    ex.printStackTrace();
    try {
    dataQ = new Vector(30);
    DataEventObj tmpDeObj = (DataEventObj) inStream.readObject();
    eObjListener = new EntityObjectListener(dataQ,inStream);
    EntityObjectListener is extends thread and waits on the stream. Once it gets the objects it addes it to the dataQ (vector). It relevant code is .............
    if (NmsClientGlobals.TRACE2)
    System.out.println( "EntityObjectListener.run(): Reading object");
    deObj = (DataEventObj) inStream.readObject();
    SERVLET
    The servlet opens a ObjectOutputStream over the HttpServletResponse. It first gets a bunch of objects from a database and writes to the stream. It also registers for change events coming from the database. When these events comes, it gets the new objects and writes them to Stream.
    Relevant Code:
    response.setStatus (HttpServletResponse.SC_OK);
    outStream = new ObjectOutputStream(
    new BufferedOutputStream(response.getOutputStream(),256));
    outStream.flush();
    // I used different buffer sizes (default-512, 1024, 256) to see if it make a difference .. it seems // not
    .......... // The following the done for all objects available in the database in a loop
    outStream.writeObject(tmpDataEnvObj);
    outStream.flush(); // Doing repeat flush to ensure that it goes through
    outStream.flush();
    outStream.flush();
    outStream.flush();
    outStream.flush();
    outStream.reset(); // reset is suggested to make stream work
    outStream.flush();
    utilLogger.debug("Written object: " + deObj.flag );
    The same code is used by thread that receives notification and then writes it to the stream. If this thread does not receive notifications for 10secs it writes dummy object to the stream. It was done as an attempted fix to the problem (if connection dies ). After adding it, I saw some interesting observations
    SOME OBSERVATIONS
    1. The server logs prints out that the object has been written but the client logs (java console) shows that it is waiting for input to come.
    2. If the amount of data is less then it takes longer for data to come to the client. It seems to me that the server waits for the stream to be filled with dummy data before it sends the final data packet. This seems to be only explaination for this observation is that there is a threshold for packet size. But, I know of no option to set this threshold. Anyway, this is analysus and may not be correct.
    3. I ran a snoop on the connection between the PC and Sun Machine. The queues for the TCP are empty. It seems that after server code prints to the logs that data is written, the TCP doesnot receive it. It seems something in the Java API or the tomcat webserver is holding the data.
    ENVIRONMENT
    server
    Platform: Solaris 2.8
    Java : jre 1.2.2_008
    Web server: Tomcat 3.2.1
    Client
    IE 5.5 with java plugin 1.2.2_008
    I appreciate your help in solving this problem
    -Seonie

    You are using a communication protocol (HTTP) that is designed for "client sends 1 request, server sends 1 response, end of story" pattern for something that is more than that. I understand that you are trying to send binary data over HTTP in order to tunnel over a firewall-friendly protocol, but HTTP was not designed for long-lasting connections. (because HTTP is "client pull", you will have to keep the connection open for a long time and keep the client blocked on read).
    This is not the ideal solution. You have been warned.
    However, if you insist on it and do not want to close the stream, try an HTTP-specific way of flushing data, like
    response.flushBuffer();The motivation behind this suggestion is that the OutputStream you are getting from the response object is probably already buffered, but it likely goes off of a buffer maintained by the HTTP implementation. Hence you can try flushing that directly.
    Vlad.

  • Capturing old VHS tapes via Dazzle DV Bridge issue

    Hey Guys!
    I am capturing some old VHS footage (>20 years) in hopes to restore it digitally as much as possible but on one tape I've run into an issue. When using the playback on the DV bridge to my TV, the audio and video are great. However, in FCP after I have captured, I am noticing several audio and video "jumps" and distortions. I checked other segments of the capture and they seem to be fine, so I am assuming it may be the tape but since my playback on the TV was excellent, I'm not sure what to consider. Any ideas?

    The tape has light physical damage. You need a converter that has a built in Time Based Corrector, such as [this one|http://desktop.grassvalley.com/products/ADVC300/index.php]. Expensive if you only need it for one tape, but you should be able to hire a unit.

  • Servlet deploy via command line

    Is there a way to deploy Servlets like EJB. I mean, is there a command line
              you can use under Unix to hot-deploy a servlet without using the Console nor
              to restart the server?
              

    You have to set the servlet classpath in weblogic.properties file to a
              specific directory. Now If all your servlets are present in this specific
              directory then you dont have to restart the server.
              Parikshit
              "UAI" <[email protected]> wrote in message
              news:8e3foa$7ij$[email protected]..
              > Is there a way to deploy Servlets like EJB. I mean, is there a command
              line
              > you can use under Unix to hot-deploy a servlet without using the Console
              nor
              > to restart the server?
              >
              >
              >
              >
              

Maybe you are looking for