Documentation menu
Complete technical reference

Reload support reference

This is the canonical support table. The interactive reload matrix and its downloadable JSON are generated from these rows; edit this file, never generated output. Each result applies only to its stated condition and linked scope. An unverified result is neither a success nor a refusal. Java 17+ is a target, not certification of every vendor or OS.

ID Area Change Outcome Conditions Next action Reference
method-body Java Edit an existing method body works Compile a supported edit into a watched output. Existing object fields remain on the JVM method-body-only path. Framework follow-up can separately recreate beans. Compile, check the same JVM and inspect the changed result. Scope
added-method Java Add or remove a method conditional Stock-JDK companion mode supports hot-compiled calls; new methods do not become native members of the original Class. Previously held removed members can retain their last implementation. Compile affected watched callers; use a supported framework adapter for reflection. Scope
instance-field Java Add an instance field conditional Stock mode stores added fields separately. Isolated initializers run on first read for existing objects; constructor-dependent or entangled initializers retain type defaults with a reason. Read the initializer diagnostic and verify an existing object. Scope
field-caller Java Read/write an added field from another class conditional Both owner and caller must be watched/reloaded in the measured direct-access shape. Field-type changes and every inherited/loader variant are not certified. Compile both sides and check the shared value on an existing object. Scope
static-field Java Add a static field with an initializer conditional Compile-time constants and separable initializers, including bounded forward conditionals/switches, are supported. Existing static blocks and values are not reset. Check the new value and any extraction refusal reason. Scope
static-reset Java Change an already initialized static field initializer restart Later saves preserve the current added static value, including null or application writes. Reload does not replay arbitrary static initialization. Restart to run startup initialization again; account for external side effects. Scope
inlined-constant Java Change an inlined compile-time constant conditional Callers can retain their old literal until recompiled. AutoCompile can rebuild detected watched sources; unwatched consumers remain outside that repair. Recompile affected callers or use supported AutoCompile. Scope
enum-tail Java Append an enum constant / remove its final constant conditional Documented on JDK 17–25 with ordinal-preserving edits. Existing application arrays sized from the old enum length do not grow. Check enum consumers and any fixed-size application arrays. Scope
enum-reorder Java Insert/reorder enum values or remove a non-tail value restart The edit renumbers ordinals; Reclazz refuses it. Restart alone does not migrate persisted ordinal data. Review persisted ordinals and restart for the type change. Scope
interface Java Add or remove an implemented interface conditional Requires a compatible enhanced-redefinition JVM such as JBR/DCEVM. Stock JVMs refuse the type change. Use a supported enhanced runtime or restart. Scope
superclass Java Change a superclass restart The loaded superclass stays unchanged. Eligible bodies may apply; dependent methods stay pinned and unsafe signatures/constructors can refuse the whole save. Read partial/refused reporting and restart for the hierarchy. Scope
reflection Java Discover added members through arbitrary reflection restart On stock JVMs the original Class lacks companion members. Explicit framework adapters have separate scope; arbitrary reflective consumers do not. Restart, or use a compatible enhanced JVM/explicitly supported adapter. Scope
jdk-new Java Assume every Java 17+ vendor/version is certified unverified Java 17+ is the target. The main recorded portable lanes are stock SapMachine 17/21 on macOS arm64, not every vendor, OS or future JDK. Validate the exact runtime and change shape. Scope
bean Spring Refresh an affected singleton bean conditional Supported bean paths destroy/recreate the singleton and repair bounded references. Mutable bean state can reset; arbitrary external holders are not repaired. Check lifecycle effects, current references and the served result. Scope
component Spring Add a new component class conditional Direct/composed stereotypes, native name/condition selection and singleton/prototype/lazy creation are supported. Not a repeat of full startup scanning. Compile the new class and check registration/condition outcome. Scope
custom-scope Spring Add a component with a web/custom scope or scoped proxy restart The new-component path refuses these scope shapes. Normal singleton/prototype support does not imply custom scope enrollment. Restart under the application’s normal configuration. Scope
condition-recheck Spring Reevaluate every filtered component after a profile/property edit unverified New-component conditions are registration-time decisions. General later rediscovery and startup import/auto-configuration replay are outside this path. Use a restart for a changed startup topology; validate any narrower path. Scope
bean-factory Spring Add an @Bean factory method conditional Bounded lite/full/static configuration paths support documented arguments, aliases, selection and direct conditions. Existing names/custom scopes/unknown composed conditions are restricted. Use the exact factory allowlist and check product identity/lifecycle. Scope
injection Spring Change existing injection or lifecycle metadata conditional Spring metadata caches are refreshed on supported bean paths. Recreation has state and reference limits; it is not an arbitrary graph rewrite. Check the recreated bean’s injection and lifecycle behavior. Scope
new-lifecycle Spring Add @PostConstruct / @PreDestroy methods conditional Supported plain singletons use the javax Spring 5 / Jakarta Spring 6 lanes. Each instance keeps its added destroy callback through later edits/removal. Verify creation/injection/destruction for the affected instance. Scope
service-advice Spring Add @Transactional or cache-advised service methods conditional Supported public singleton operations use native interceptors; bounded composed metadata is supported. Compile the caller and respect the proxy/advice allowlist. Verify commit/rollback or cache behavior, not only the method result. Scope
security Spring Add pre/post authorization to a new service operation conditional Named classic/modern Spring Security graphs support direct and bounded composed policies. Unknown security infrastructure/advice shapes are refused. Check both allowed and denied calls with the installed security graph. Scope
aspect Spring Edit an @Aspect pointcut conditional Updates supported existing mutable singleton JDK/CGLIB proxy chains. Previously unproxied targets and unsupported proxy shapes are outside this path. Check an already-injected reference and inspect unsupported targets. Scope
scheduled Spring Add/edit/remove @Scheduled methods conditional Direct no-argument void callbacks on supported singletons, with documented proxy/transaction/cache/async combinations. Removal cancels the registration. Check one current schedule and retirement of its predecessor. Scope
event Spring Add/edit/remove @EventListener methods conditional Direct callbacks with one reference event input and void/single-event return on supported singletons. Filtering/order/conditions and advice have bounded scope. Publish a test event; check current delivery and no stale registration. Scope
transaction-event Spring Add @TransactionalEventListener methods conditional Direct void methods on supported unproxied singletons; Spring handles phase/fallback/conditions/order. Reload retires queued callbacks from the old added registration. Check the intended transaction phase and a later edit/removal. Scope
async Spring Add @Async service methods conditional Direct public methods support void, Future and CompletableFuture with native executor/error handling and supported transaction/cache advice. Check execution, returned completion and exception handling. Scope
constructor-helper Spring Reload a helper captured by a constructor-injected leaf conditional Exact supported factories, plain two-node shapes and one measured direct-child context form. Aliases, broader graphs, proxies/factory products and lifecycle-owned shapes are excluded. Read the ownership contract and verify the retained caller’s value. Scope
mvc Web & JSON Add/change a controller endpoint conditional Supported controller mapping rescans include added methods on stock JVMs. Receiver, metadata and classloader shapes still matter. Compile and send a request to the intended route. Scope
exception-handler Web & JSON Add @ExceptionHandler methods conditional Plain controllers/advice and standard resolver on Framework 5.3.39/6.1.14; bounded synchronous metadata. Proxy/inheritance/generic/composed/custom resolver shapes are excluded. Check status/body and handler precedence; fix ambiguous mappings. Scope
binder-model Web & JSON Add @InitBinder / @ModelAttribute methods conditional Supported plain controller/advice adapters preserve named binding, model rules and native advice order/selectors. Read the exact callback allowlist. Check a real binding/model request through the current controller. Scope
jackson Web & JSON Add Jackson getters, setters or DTO fields conditional Supported Spring-managed mapper adapter; mutable DTOs and saved annotations. Final added fields are not writable; creator/record/builder additions are excluded. Check JSON input and output against the installed Jackson version. Scope
serializer Web & JSON Assume every serializer discovers companion members unverified Jackson’s explicit adapter does not establish arbitrary Gson/custom mapper or record-creator support. Stock original-class reflection remains limited. Validate the serializer or restart for native reflective visibility. Scope
constraint Web & JSON Change validation constraints on an existing field conditional Supported Hibernate Validator metadata caches are cleared in both javax/Jakarta factory discovery paths. Do not infer arbitrary validator/provider compatibility. Submit both invalid and valid input; inspect the native validation result. Scope
web-security Web & JSON Edit an existing Spring Security HTTP rule conditional Supported SecurityFilterChain beans rebuild into the live FilterChainProxy. Inline ignoring chains remain; a failed rebuild can keep the previous rules serving. Verify allowed and denied requests; inspect whether the new rules became live. Scope
kafka Messaging Add/edit/remove a Kafka listener conditional Plain singleton, direct callback, explicit literal ID, documented topic/group/options and standard record-mode factory. Native consumers retire before replacement. Verify message delivery, new route and old-consumer retirement. Scope
jms Messaging Add/edit/remove a JMS listener conditional Plain singleton with standard processor/registry/default container factory. Literal or placeholder destinations/selectors; bounded result and callback shapes. Verify delivery/selector behavior and complete consumer destruction. Scope
jms-reply Messaging Add synchronous JMS replies conditional Documented return types and direct @SendTo. JMSReplyTo takes priority; null sends nothing. No arbitrary DTO/Future/reactive return claim. Check conversion, correlation and destination on a test request. Scope
rabbit Messaging Add/edit/remove a Rabbit listener conditional Plain receiver, standard simple container, AUTO acknowledgment/default executor and bounded queue/options. Startup worker hook must track complete retirement. Wait for worker retirement and verify real message delivery. Scope
listener-expression Messaging Change a Kafka/Rabbit expression-driven route conditional Documented native SpEL values are reevaluated when the listener is saved. Evaluation occurs after old consumers retire and can fail without restoring them. Save the listener again and check the exact route/group. Scope
property-route Messaging Reroute consumers by changing only a routing property/bean conditional The documented added Kafka/Rabbit expression path does not automatically reroute on a property/bean-only edit; a listener re-save is the supported live action. Re-save/compile the listener, or restart for native startup resolution. Scope
consumer-helper Messaging Recreate JMS/Kafka consumers after a helper/property save conditional Separately measured narrow root-context leaf-owner transactions; exact factories, constructor and callback shapes. Not arbitrary consumer graphs. Use the constructor ownership guide and check current-value delivery. Scope
rabbit-helper Messaging Recreate Rabbit consumers through property/dependency cascades conditional Measured on Framework 5.3.39/AMQP 2.4.17 and Framework 6.1.14/AMQP 3.1.7, stock JDK 17/21 on macOS arm64: one root context, plain local helper/leaf owner, one void literal-ID callback, native simple containers, AUTO acknowledgment and nontransacted channels. Verify current helper/owner values and complete worker retirement; unsupported ownership, stop timeout or partial reconstruction requires restart. Scope
mixed-listener Messaging Reload one bean mixing Kafka/JMS/Rabbit consumers restart Unsupported mixed ownership is refused before owned consumers retire. Single-broker coordination is not a combined broker transaction. Separate the ownership shape or restart. Scope
messaging-advanced Messaging Assume XA, hosted clusters, rebalances or exactly-once reload unverified Local broker observations do not certify every hosted/failure/transactional topology. Rabbit reply/async and broader custom container paths are separate gaps. Run targeted acceptance for your broker, lifecycle and delivery policy. Scope
boot-properties Configuration Edit recognized Boot properties conditional Candidate binding/conversion/validation occurs before live mutation. Uncheckable/invalid candidates remain pending; live setter/recreation failure can partially apply. Fix rejected input, save again and inspect actual runtime values. Scope
boot-yaml Configuration Edit nested YAML values or indexed lists conditional Already-loaded local Boot resources with stable source/document ownership. Current native lane is Boot 2.7.18 / SnakeYAML 1.30, not all Boot versions. Edit the actual runtime file and inspect source precedence. Scope
key-removal Configuration Delete a key or a recognized Boot file conditional Removal reveals lower-priority values/defaults in the supported source path. Mutable property identities are preserved; read-only/write-only removal shapes are uncheckable. Verify resulting defaults and supported consumer rebinding. Scope
config-topology Configuration Change active documents, imports, profiles or config locations restart Stable source positions/document activation are prerequisites. Startup config topology is not rebuilt by a value save. Restart with the new startup configuration. Scope
value Configuration Change direct or computed @Value inputs conditional Fields, scalar constructor inputs and supported factory arguments have distinct check/recreation paths. Unsupported expression operations hold the candidate. Check the documented expression/consumer shape before retrying. Scope
xml-property Configuration Edit a property on a loaded ordinary XML bean conditional Resolved local file/context ownership plus supported value shape. Setter errors can preserve metadata but still have application side effects. Inspect the property result and independent-bean diagnostics. Scope
xml-recreate Configuration Edit existing XML constructor/factory/lifecycle metadata conditional Bounded ordinary singleton recreation, stable concrete type/ownership and supported direct holders. Native observer: Spring 5.3.39 / JDK 21. Check creation/destruction, repaired references and any restore failure. Scope
xml-policy Configuration Change XML scope, parent, aliases or creation policy restart Existing metadata changes such as depends-on/primary/autowire/effective lazy flag are guarded. Supported property edits do not rebuild startup policy. Follow the bean-specific restart diagnostic. Scope
xml-unsupported-noop Configuration Save unchanged unsupported XML definitions not-reloaded A proven unchanged standard definition stays quiet, including known abstract/prototype shapes. Unknown/custom metadata retains conservative diagnostics. Expect no reconstruction; real unsupported edits still require restart. Scope
xml-resource Configuration Edit newly imported, remote or packaged XML unverified Captured-local discovery does not cover remote/JAR resources, pre-hook loads or a general import-topology rebuild. Edit the actually owned local resource or restart. Scope
message Configuration Edit recognized physical message bundles conditional Named native Spring message-source/cache lanes; arbitrary custom basenames and automatic source-to-output copying are not established. Edit the runtime file and check a warmed formatted lookup. Scope
template Configuration Edit recognized file templates conditional Named FreeMarker/Thymeleaf file-resolver lanes. Malformed saves can produce render errors; last-valid retention is not promised. Render the current output; fix malformed input and retry. Scope
packaged-resource Configuration Edit resources inside packaged JAR/WAR files unverified Physical-file observers do not establish packaged-resource replacement or arbitrary view-resolver integration. Use unpacked recognized runtime resources or restart/redeploy. Scope
logging Configuration Change a supported logging level/configuration conditional Supported logging.level keys or logback/log4j2 config refresh. Removing a level without a fallback can still need reset/restart. Verify the target logger; keep SAP property pairs separate. Scope
unknown-files Configuration Expect arbitrary files to trigger a reload not-reloaded ChangeKind recognizes specific suffixes and owned resources. Unknown kinds have no Reclazz reload action; another framework may independently serve the file. Check the resource classifier and your application’s own resource pipeline. Scope
jpa-existing Persistence Add a mapped field to an existing entity conditional Requires enhanced visibility plus supported jpaRefresh=true/DDL-enabled mapping path; stock companion fields are not native ORM members. Prepare schema/mapping prerequisites or restart. Scope
jpa-new Persistence Add a new JPA entity with a prepared schema conditional jpaRefresh=true, explicit Hibernate validate, one unit and standard provider/factory in the recorded graph. No automatic migration or update-mode switch. Prepare table/columns, compile and verify native mapping installation. Scope
jpa-retry Persistence Retry a new-entity mapping after a schema failure conditional Failed candidate leaves the previous factory open before install. Identical bytes are ignored; changing pending mapping declarations is refused. Fix schema, then compile a body-only edit to the same pending entity. Scope
jpa-active Persistence Keep old persistence contexts/transactions through a rebuild restart A successful persistence-unit swap retires the old native factory. Holding active old contexts across it is unsupported. Finish database work first; restart/recover unsupported retained contexts. Scope
repository Persistence Edit supported Spring Data query methods conditional Warm singleton Repository products and bounded direct holder repair. Scalar H2 native-query evidence does not cover new interface methods/all query shapes. Check the query result and the retained managed consumer. Scope
cache Persistence Invalidate caches dependent on changed helper code conditional Observed synchronous Spring cache dependencies in stock companion mode; region-level conservative eviction. Async/unwatched/pre-attach work is not complete. Exercise the cache first, reload and check next-call freshness. Scope
custom-cache Persistence Rebuild a custom cache owner after helper changes conditional refreshOwnersOnHelper opt-in for supported singleton owners. Non-singletons, FactoryBeans and event-listener owners are declined. Name the eligible owner and check lifecycle/state reset. Scope
items SAP Commerce Save *-items.xml / *-beans.xml conditional Platform generation/build can reload generated classes. Persistence/type-system updates and native reflection are separate requirements. Verify generated bytecode; update the platform schema when required. Scope
sap-schema SAP Commerce Create columns through Update Running System conditional Manual HAC action is separate from reload. autoUpdateRunningSystem=true is a distinct off-by-default dev-only DDL opt-in. Choose the schema action explicitly and verify the type/persistence result. Scope
sap-config SAP Commerce Apply changed SAP configuration keys conditional Changed keys reach the Config path; successful keys acknowledge independently. Startup-only consumers are still reported as restart-required. Check each key’s runtime consumer and pending status. Scope
sap-localization SAP Commerce Edit type/enum localization or Backoffice labels conditional Recognized physical locale/label files refresh the platform caches they serve. Broader tenant/cluster acceptance is not implied. Check a new lookup or reopen the affected Backoffice view. Scope
impex SAP Commerce Import a changed ImpEx file automatically conditional autoImpex=true opt-in writes live development data. REMOVE/macro-expanded REMOVE is refused unless separately permitted; no rollback. Use disposable data; inspect import results and guard diagnostics. Scope
interceptor SAP Commerce Refresh supported interceptor mappings conditional Mappings are captured before bean refresh and re-registered in the actual SAP registry. SDK contract is not live model-save tenant acceptance. Check the registry result and a relevant live model operation. Scope
occ SAP Commerce Edit OCC field sets, mappings or supported directives conditional Dedicated field-set/request-mapping/populator/list-merge paths have individual ownership and registration limits. Not arbitrary platform topology reload. Read the matching path and verify the actual OCC response. Scope
extension SAP Commerce Add an extension to the platform restart The extension list is established at startup. Generated-bytecode reload does not enroll a new extension. Build the platform and restart. Scope
backoffice-config SAP Commerce Edit *-backoffice-config.xml conditional The source resets supported CockpitConfigurationService caches through Resettable.reset, without resetToDefaults. Packaged module copies can still answer until rebuilt. Reopen the view and verify the actual loaded configuration; build a packaged copy if needed. Scope
backoffice-socket SAP Commerce Add a Backoffice @SocketEvent action restart Class replacement does not register the new action in existing widgets. Existing action-body edits use ordinary class reload; label/config caches are separate. Read the widget-specific PENDING entry and restart to register the added action. Scope
sap-process SAP Commerce Edit or delete a registered SAP process definition XML restart Recognized local process-definition resources produce a diagnostic only. No running process is changed or replayed; unrelated XML does not become a process resource by name. Validate the definition and restart to load it. Scope
dependency Operations Add a new dependency JAR to the JVM classpath restart The running JVM startup classpath is not replaced by watching class outputs. Restart with the updated launch classpath. Scope
request-boundary Operations Avoid a supported request crossing a method-body reload conditional reloadBoundary=request at startup, supported native MVC hook/lifetimes. Drain deadline defers; it is not batch/schema/background atomicity. Check the measured servlet graph and queued-work diagnostics. Scope
build-failure Operations Apply class output from a failed/paused build conditional Build admission holds output until a successful captured batch; SCAN alone cannot release the hold. Manual pause is an independent switch. Complete the build, release the correct hold and verify completion. Scope
Canonical source

This full page is generated from docs/reload-support.md. Edit the repository source and rebuild; do not edit generated HTML.

Search guides, changes and limits. Your query stays in this browser.

↑ ↓ to select · Enter to open · Esc to close