On Wed, 8 Oct 2025 02:29:54 GMT, Josiah Noel <[email protected]> wrote:

>> src/jdk.httpserver/share/classes/sun/net/httpserver/ExchangeImpl.java line 
>> 65:
>> 
>>> 63:     private static final boolean perExchangeAttributes =
>>> 64:         !System.getProperty("jdk.httpserver.attributes", "")
>>> 65:               .equals("context");
>> 
>> The property will have to be documented somewhere such as the jdk.httpserver 
>> module-info. But, I'm wondering if fairly obscure properties like this might 
>> be better off "buried" in the net.properties config file. I think there's a 
>> case for putting all such "compatibility" flags somewhere out of the way 
>> like that. If we were to do that, you would need to access the property 
>> using  `sun.net.NetProperties`. 
>> 
>> Any other views on this?
>
> I can switch to `sun.net.NetProperties` if you so desire.

Yeah, I think we should put the property in `net.properties` something like 
this:


  # Prior to JDK 26, the HttpExchange attribute map was shared with the 
enclosing HttpContext.
  # Since JDK 26, by default, exchange attributes are per-exchange and the 
context attributes must
  # be accessed by calling getHttpContext().getAttributes(). Uncomment this 
property to
  # restore the pre JDK 26 behavior.
  #
  # jdk.httpserver.attributes=context

Then I think we should add a sentence at the end of the jdk.httpserver 
module-info to say that additional
system/networking properties may be defined in `net.properties`

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/27652#discussion_r2413328557

Reply via email to