On 10/17/06, Thomas TERMIN <[EMAIL PROTECTED]> wrote:
Hello Guillaume,
we have a new proplem. You can't set the maxIdleTime for jetty connector
higher than the continuation (suspend) time in the consumer processor.
If you set the maxIdleTime for example to 70sec and the suspend time for
the continuation is for example 60sec and the response is not available
before 60sec you get an exception. The consumer look for an response but
no response is available. So what I need is that I can configure the
maxIdleTime for the connector as well as the supsend time for continuation.
I guess both should be configured using the same value.
But before I can work on this problem I need to build servicemix. And
that doesnt work. I get a build error:
[INFO] [resources:resources]
[INFO] Using default encoding to copy filtered resources.
Downloading:
http://www.ibiblio.org/maven2/geronimo/geronimo-connector/1.1/geronimo-connector-1.1.pom
[INFO]
------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO]
------------------------------------------------------------------------
[INFO] Error building POM (may not be this project's POM).
Project ID: geronimo:geronimo-connector
Reason: Error getting POM for 'geronimo:geronimo-connector' from the
repository: Error transferring file
geronimo:geronimo-connector:pom:1.1
How can I solve this? Is it also possible to work offline and better to
build servicemix with ant? That would be very nice.
This should not stop the build.
You can build offline using the -o option on the command line, once you
have all the needed dependencies.
Btw, have you raised a JIRA ? I can fix the problem if you want.
Regards,
Thomas Termin
Guillaume Nodet wrote:
> I haven't commited the fixes yet,
> so you can go for it.
>
> On 10/16/06, Thomas TERMIN <[EMAIL PROTECTED]> wrote:
>>
>> > 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
>>
>> So should I do it in this way? Or did you change the code already? So if
>> it is faster I will do it because we need this changes as soon as
>> possible.
>>
>> Regards,
>> Thomas Termin
>>
>>
>> >
>> > 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