Thanks for taking the time to look into this issue.
See comments inline.

On 10/16/06, Thomas TERMIN <[EMAIL PROTECTED]> wrote:
Hello Guillaume,

I don't know how I can provide you the patch.

The best way to provide a patch is to:
1) raise a JIRA issue (if not already done)
2) attach a diff file to the issue

The diff should be generated using a "svn diff" command.
You need first to checkout the source tree using svn,
modify the sources and launch the command.  This way,
we could easily apply a patch.

I apanded you the changes
in the files below but before I have some more questions.

1. In the servicemix-http component is a component.properties file
intented (in the workspace directory of the component). Where do I have
to package this file in the servicemix-http component.

You do not have to.  You can modify the values through the JMX console
after component installation or modify the values at installation time
by using the ant tasks (adding <param/> attribute, see
http://servicemix.goopen.org/site/installcomponenttask.html).


2. There is also a save method in the HttpConfiguraton class. Could we
make this method public for jmx so that we could save the changes in
exactly that file.

Usually, when the setter is called, the save() method is also called,
so I do not see the need making this method public.  Do you see
any other specific reason ?


3. Is it possible to change the properties through JMX at runtime or
rather will be the connector reconfigured then after the changes?

You can change the properties at runtime, however, some of the
changes are only effective when you shutdown / restart the component
(you can do that easily using JMX).


Change in the files:

org.apache.servicemix.http.HttpConfiguration.java

...
    /**
     * maxIdleTiemout (default jetty time)
     */
    private int connectorMaxIdleTimeout = 30000;
...
    public int getConnectorMaxIdleTimeout() {
        return connectorMaxIdleTimeout;
    }

    public void setConnectorMaxIdleTimeout(int timeout) {
        this.connectorMaxIdleTimeout = timeout;
    }


    public void save() {
        ...
        properties.setProperty("connectorMaxIdleTimeout",
Integer.toString(connectorMaxIdleTimeout));
        ...
    }

    public boolean load() {
        ...
        if (properties.getProperty("connectorMaxIdleTimeout") != null) {
            connectorMaxIdleTimeout =
Integer.parseInt(properties.getProperty("connectorMaxIdleTimeout"));
        }
        ...
    }



org.apache.servicemix.http.jetty.JettyContextManager.java:

    protected Server createServer(URL url, SslParameters ssl) throws

        Exception {
        ... a lot of other code

        // original code
        connector.setHost(url.getHost());
        connector.setPort(url.getPort());

        // the added call
 connector.setMaxIdleTime(this.configuration.getConnectorMaxIdleTimeout());

        // and again original code
        Server server = new Server();
        server.setThreadPool(new ThreadPoolWrapper());

        ... and so one

    }

If you have a better idea how I could provide you the patch. Please let
me know.

Regards,
Thomas Termin


Guillaume Nodet wrote:
> Currently no, but please raise a JIRA.
> If you could submit a patch, it would be great ;)
>
> On 10/13/06, Thomas TERMIN <[EMAIL PROTECTED]> wrote:
>> Hello,
>>
>> if you request a component in servicemix with an http-client for example
>>  curl, you get allways after 30sec an empty reply from the server if the
>> requested component takes longer than 30sec. It seems to be a timeout
>> from jetty.
>>
>> Is it possible to configure this somewhere in servicemix?
>>
>> Regards,
>> Thomas Termin
>>
>
>




--
Cheers,
Guillaume Nodet

Reply via email to