archiva-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brett Porter <br...@apache.org>
Subject Re: maven1 doesn't download artifacts from Archiva...
Date Sat, 26 Aug 2006 01:52:36 GMT
I fixed the wagon bug yesterday (so this only affects the maven 1.1  
betas, and should be ok in the final release).

We'll need to investigate this. It's probably wise to make the proxy  
action HTTP aware and grab the response to modify. I think another  
alternative is to add the last modified header to xwork.xml and have  
it use an expression (which should work with the code you have here).



On 25/08/2006, at 8:28 PM, Nicolas De Loof wrote:

>
> I don't find support for Last-Modified header in webwork  
> StreamResult. I never used webwork before, so I don't knwo where to  
> search...
>
> I'd like to add this to ProxyAction :
>
> private Date lastModified;
>
> public String execute()
>        throws ProxyException
>    {
>       ...
>        lastModified = new Date(file.lastModified());
>       ...
>    }
>
> It seems the default Date.toString() is acceptable for Last- 
> Modified header.
>
> Nico.
>
> Nicolas De Loof a écrit :
>>
>> I was wrong in this diagnostic.
>>
>> Sounds like a Wagon bug : When artifact doesn't exists, maven ask  
>> for last-modified = 0
>> Archiva response has no last-modified header, so wagon uses  
>> lastModified=0
>>
>> The response content is extracted from HTTP response only if  
>> (timestamp < lastModified).
>>
>> -> This is a Wagon HTTP provider bug. It should consider long  
>> lastModified = Long.MAX_VALUE; as default
>>
>> -> To be compatible with existing maven, Archiva should send a  
>> Last-Modified header. No idea what value to send. Idealy, the last- 
>> modified date of the artifact in the proxied repo would be the best.
>>
>>
>> Nicolas De Loof a écrit :
>>>
>>> Maven1 is sending an "If-Modified-Since" header. Sounds like  
>>> Archiva doesn't send the file. As it just downloaded it, I supose  
>>> file in managed repo has lastchanged date to "now". So this  
>>> sounds like an Archiva bug.
>>>
>>> Nicolas De Loof a écrit :
>>>>
>>>> I've setup my archiva as a maven proxy and can get artifacts as  
>>>> expected using legacy path when using a browser.
>>>>
>>>> I've set maven.repo.remote = http://localhost:8080/maven- 
>>>> repository-webapp/proxy/vasn/
>>>> Now, when I run maven (1.1-beta-3) to build my project,  
>>>> artifacts are downloaded in my managed repo as expected, but  
>>>> maven1 doesn't put them into my local repo :
>>>> I get output in maven console :
>>>> "
>>>> Tentative de téléchargement des dépandances manquantes/snapshot  
>>>> requis par hamlet:
>>>> Tentative de téléchargement de log4j-1.2.13.jar.
>>>> Téléchargement passé car la copie locale est à jour!
>>>> Tentative de téléchargement de commons-modeler-1.1.jar.
>>>> Téléchargement passé car la copie locale est à jour!
>>>> ...
>>>> "
>>>>
>>>> Just to help, here is the HTTP headers I get when using a browser :
>>>>
>>>> "
>>>> GET /maven-repository-webapp/proxy/vasn//log4j/jars/ 
>>>> log4j-1.2.13.jar HTTP/1.1
>>>> Host: localhost:8580
>>>> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; fr; rv: 
>>>> 1.8.0.6) Gecko/20060728 Firefox/1.5.0.6
>>>> Accept: text/xml,application/xml,application/xhtml+xml,text/ 
>>>> html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
>>>> Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
>>>> Accept-Encoding: gzip,deflate
>>>> Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
>>>> Keep-Alive: 300
>>>> Connection: keep-alive
>>>> Cookie: JSESSIONID=7CB00D6F750F3BB6B228688AD48BC923;  
>>>> jforumUserHash=null; jforumAutoLogin=null; jforumUserId=2
>>>>
>>>> HTTP/1.x 200 OK
>>>> Server: Apache-Coyote/1.1
>>>> content-disposition: filename="log4j-1.2.13.jar"
>>>> Content-Type: application/octet-stream
>>>> Transfer-Encoding: chunked
>>>> Date: Fri, 25 Aug 2006 08:22:44 GMT
>>>> "
>>>>
>>>> Any idea ?
>>>>
>>>> Nico.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> This message contains information that may be privileged or  
>>>> confidential and is the property of the Capgemini Group. It is  
>>>> intended only for the person to whom it is addressed. If you are  
>>>> not the intended recipient,  you are not authorized to read,  
>>>> print, retain, copy, disseminate,  distribute, or use this  
>>>> message or any part thereof. If you receive this  message in  
>>>> error, please notify the sender immediately and delete all   
>>>> copies of this message.
>>>>
>>>
>>> This message contains information that may be privileged or  
>>> confidential and is the property of the Capgemini Group. It is  
>>> intended only for the person to whom it is addressed. If you are  
>>> not the intended recipient,  you are not authorized to read,  
>>> print, retain, copy, disseminate,  distribute, or use this  
>>> message or any part thereof. If you receive this  message in  
>>> error, please notify the sender immediately and delete all   
>>> copies of this message.
>>>
>>
>> This message contains information that may be privileged or  
>> confidential and is the property of the Capgemini Group. It is  
>> intended only for the person to whom it is addressed. If you are  
>> not the intended recipient,  you are not authorized to read,  
>> print, retain, copy, disseminate,  distribute, or use this message  
>> or any part thereof. If you receive this  message in error, please  
>> notify the sender immediately and delete all  copies of this message.
>>
>
> This message contains information that may be privileged or  
> confidential and is the property of the Capgemini Group. It is  
> intended only for the person to whom it is addressed. If you are  
> not the intended recipient,  you are not authorized to read, print,  
> retain, copy, disseminate,  distribute, or use this message or any  
> part thereof. If you receive this  message in error, please notify  
> the sender immediately and delete all  copies of this message.

Mime
View raw message