LocalObject (Java Platform SE 8 )
Keywords: org.omg.CORBA.LocalObject class
Date: 2026-04-24

org.omg.CORBA

## Class LocalObject

- java.lang.Object
- - org.omg.CORBA.LocalObject

- All Implemented Interfaces:
    Object

      public class LocalObject
      extends Object
      implements Object

  Used as a base class for implementation of a local IDL interface in the Java language mapping. It is a class which implements all the operations in the `org.omg.CORBA.Object` interface.

  Local interfaces are implemented by using CORBA::LocalObject to provide implementations of `Object` pseudo operations and any other ORB-specific support mechanisms that are appropriate for such objects. Object implementation techniques are inherently language-mapping specific. Therefore, the `LocalObject` type is not defined in IDL, but is specified in each language mapping.

  Methods that do not apply to local objects throw an `org.omg.CORBA.NO_IMPLEMENT` exception with the message, "This is a locally contrained object." Attempting to use a `LocalObject` to create a DII request results in NO_IMPLEMENT system exception. Attempting to marshal or stringify a `LocalObject` results in a MARSHAL system exception. Narrowing and widening references to `LocalObjects` must work as for regular object references.

  `LocalObject` is to be used as the base class of locally constrained objects, such as those in the PortableServer module. The specification here is based on the CORBA Components Volume I - orbos/99-07-01

  See Also:
    `CORBA` package comments for unimplemented features

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `LocalObject()` Constructs a default `LocalObject` instance.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Request` | `_create_request(Context ctx, String operation, NVList arg_list, NamedValue result)` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.
    `Request` | `_create_request(Context ctx, String operation, NVList arg_list, NamedValue result, ExceptionList exceptions, ContextList contexts)` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.
    `Object` | `_duplicate()` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.
    `DomainManager[]` | `_get_domain_managers()` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method does not apply to local objects and is therefore not implemented.
    `Object` | `_get_interface_def()` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.
    `Object` | `_get_interface()` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method does not apply to local objects and is therefore not implemented.
    `Policy` | `_get_policy(int policy_type)` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method does not apply to local objects and is therefore not implemented.
    `int` | `_hash(int maximum)` Returns a hash value that is consistent for the lifetime of the object, using the given number as the maximum.
    `InputStream` | `_invoke(OutputStream output)` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.
    `boolean` | `_is_a(String repository_id)` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method does not apply to local objects and is therefore not implemented.
    `boolean` | `_is_equivalent(Object that)` Determines whether the two object references are equivalent, so far as the ORB can easily determine.
    `boolean` | `_is_local()` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.
    `boolean` | `_non_existent()` Always returns `false`.
    `ORB` | `_orb()` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.
    `void` | `_release()` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.
    `void` | `_releaseReply(InputStream input)` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.
    `Request` | `_request(String operation)` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.
    `OutputStream` | `_request(String operation, boolean responseExpected)` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.
    `void` | `_servant_postinvoke(ServantObject servant)` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.
    `ServantObject` | `_servant_preinvoke(String operation, Class expectedType)` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.
    `Object` | `_set_policy_override(Policy[] policies, SetOverrideType set_add)` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method does not apply to local objects and is therefore not implemented.
    `boolean` | `validate_connection()` Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method does not apply to local objects and is therefore not implemented.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### LocalObject

          public LocalObject()

      Constructs a default `LocalObject` instance.

  - ### Method Detail

    - #### _is_equivalent

          public boolean _is_equivalent(Object that)

      Determines whether the two object references are equivalent, so far as the ORB can easily determine. Two object references are equivalent if they are identical. Two distinct object references which in fact refer to the same object are also equivalent. However, ORBs are not required to attempt determination of whether two distinct object references refer to the same object, since such determination could be impractically expensive.

      Default implementation of the org.omg.CORBA.Object method.

      Specified by:
        `_is_equivalent` in interface `Object`
      Parameters:
        `that` - the object reference with which to check for equivalence
      Returns:
        `true` if this object reference is known to be equivalent to the given object reference. Note that `false` indicates only that the two object references are distinct, not necessarily that they reference distinct objects.

    - #### _non_existent

          public boolean _non_existent()

      Always returns `false`. This method is the default implementation of the `org.omg.CORBA.Object` method.

      Specified by:
        `_non_existent` in interface `Object`
      Returns:
        `false`

    - #### _hash

          public int _hash(int maximum)

      Returns a hash value that is consistent for the lifetime of the object, using the given number as the maximum. This method is the default implementation of the `org.omg.CORBA.Object` method.

      Specified by:
        `_hash` in interface `Object`
      Parameters:
        `maximum` - an `int` identifying maximum value of the hashcode
      Returns:
        this instance's hashcode

    - #### _is_a

          public boolean _is_a(String repository_id)

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method does not apply to local objects and is therefore not implemented. This method is the default implementation of the `org.omg.CORBA.Object` method.

      Specified by:
        `_is_a` in interface `Object`
      Parameters:
        `repository_id` - a `String`
      Returns:
        NO_IMPLEMENT because this is a locally constrained object and this method does not apply to local objects
      Throws:
        `NO_IMPLEMENT` - because this is a locally constrained object and this method does not apply to local objects
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _duplicate

          public Object _duplicate()

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.

      Specified by:
        `_duplicate` in interface `Object`
      Returns:
        a duplicate of this `LocalObject` instance.
      Throws:
        `NO_IMPLEMENT`
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _release

          public void _release()

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.

      Specified by:
        `_release` in interface `Object`
      Throws:
        `NO_IMPLEMENT`
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _request

          public Request _request(String operation)

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.

      Specified by:
        `_request` in interface `Object`
      Parameters:
        `operation` - a `String` giving the name of an operation to be performed by the request that is returned
      Returns:
        a `Request` object with the given operation
      Throws:
        `NO_IMPLEMENT`
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _create_request

          public Request _create_request(Context ctx,
                                         String operation,
                                         NVList arg_list,
                                         NamedValue result)

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.

      Specified by:
        `_create_request` in interface `Object`
      Parameters:
        `ctx` - a `Context` object containing a list of properties
        `operation` - the `String` representing the name of the method to be invoked
        `arg_list` - an `NVList` containing the actual arguments to the method being invoked
        `result` - a `NamedValue` object to serve as a container for the method's return value
      Returns:
        a new `Request` object initialized with the given arguments
      Throws:
        `NO_IMPLEMENT`
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _create_request

          public Request _create_request(Context ctx,
                                         String operation,
                                         NVList arg_list,
                                         NamedValue result,
                                         ExceptionList exceptions,
                                         ContextList contexts)

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.

      Specified by:
        `_create_request` in interface `Object`
      Parameters:
        `ctx` - a `Context` object containing a list of properties
        `operation` - the name of the method to be invoked
        `arg_list` - an `NVList` containing the actual arguments to the method being invoked
        `result` - a `NamedValue` object to serve as a container for the method's return value
        `exceptions` - an `ExceptionList` object containing a list of possible exceptions the method can throw
        `contexts` - a `ContextList` object containing a list of context strings that need to be resolved and sent with the `Request` instance
      Returns:
        the new `Request` object initialized with the given arguments
      Throws:
        `NO_IMPLEMENT`
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _get_interface

          public Object _get_interface()

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method does not apply to local objects and is therefore not implemented. This method is the default implementation of the `org.omg.CORBA.Object` method.

      Returns:
        NO_IMPLEMENT because this is a locally constrained object and this method does not apply to local objects
      Throws:
        `NO_IMPLEMENT` - because this is a locally constrained object and this method does not apply to local objects
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _get_interface_def

          public Object _get_interface_def()

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.

      Specified by:
        `_get_interface_def` in interface `Object`
      Returns:
        the `InterfaceDef` object in the Interface Repository which provides type information about the object referred to by this object reference
      Throws:
        `NO_IMPLEMENT`
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _orb

          public ORB _orb()

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.

      Returns:
        the ORB instance that created the Delegate contained in this `ObjectImpl`
      Throws:
        `NO_IMPLEMENT`
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _get_policy

          public Policy _get_policy(int policy_type)

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method does not apply to local objects and is therefore not implemented. This method is the default implementation of the `org.omg.CORBA.Object` method.

      Specified by:
        `_get_policy` in interface `Object`
      Parameters:
        `policy_type` - an `int`
      Returns:
        NO_IMPLEMENT because this is a locally constrained object and this method does not apply to local objects
      Throws:
        `NO_IMPLEMENT` - because this is a locally constrained object and this method does not apply to local objects
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _get_domain_managers

          public DomainManager[] _get_domain_managers()

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method does not apply to local objects and is therefore not implemented. This method is the default implementation of the `org.omg.CORBA.Object` method.

      Specified by:
        `_get_domain_managers` in interface `Object`
      Returns:
        the list of immediately enclosing domain managers of this object. At least one domain manager is always returned in the list since by default each object is associated with at least one domain manager at creation.
      Throws:
        `NO_IMPLEMENT`
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _set_policy_override

          public Object _set_policy_override(Policy[] policies,
                                             SetOverrideType set_add)

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method does not apply to local objects and is therefore not implemented. This method is the default implementation of the `org.omg.CORBA.Object` method.
      Specified by:
        `_set_policy_override` in interface `Object`
      Parameters:
        `policies` - an array
        `set_add` - a flag
      Returns:
        NO_IMPLEMENT because this is a locally constrained object and this method does not apply to local objects
      Throws:
        `NO_IMPLEMENT` - because this is a locally constrained object and this method does not apply to local objects
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _is_local

          public boolean _is_local()

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.

      Returns `true` for this `LocalObject` instance.

      Returns:
        `true` always
      Throws:
        `NO_IMPLEMENT`
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _servant_preinvoke

          public ServantObject _servant_preinvoke(String operation,
                                                  Class expectedType)

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.

      Parameters:
        `operation` - a `String` indicating which operation to preinvoke
        `expectedType` - the class of the type of operation mentioned above
      Returns:
        NO_IMPLEMENT because this is a locally constrained object and this method does not apply to local objects
      Throws:
        `NO_IMPLEMENT` - because this is a locally constrained object and this method does not apply to local object
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _servant_postinvoke

          public void _servant_postinvoke(ServantObject servant)

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.

      Parameters:
        `servant` - the servant object on which to post-invoke
      Throws:
        `NO_IMPLEMENT`
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _request

          public OutputStream _request(String operation,
                                       boolean responseExpected)

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.

      Called by a stub to obtain an OutputStream for marshaling arguments. The stub must supply the operation name, and indicate if a response is expected (i.e is this a oneway call).

      Parameters:
        `operation` - the name of the operation being requested
        `responseExpected` - `true` if a response is expected, `false` if it is a one-way call
      Returns:
        NO_IMPLEMENT because this is a locally constrained object and this method does not apply to local objects
      Throws:
        `NO_IMPLEMENT` - because this is a locally constrained object and this method does not apply to local objects
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _invoke

          public InputStream _invoke(OutputStream output)
                              throws ApplicationException,
                                     RemarshalException

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.

      Called to invoke an operation. The stub provides an `OutputStream` that was previously returned by a `_request()` call. `_invoke` returns an `InputStream` which contains the marshaled reply. If an exception occurs, `_invoke` may throw an `ApplicationException` object which contains an `InputStream` from which the user exception state may be unmarshaled.

      Parameters:
        `output` - the `OutputStream` to invoke
      Returns:
        NO_IMPLEMENT because this is a locally constrained object and this method does not apply to local objects
      Throws:
        `ApplicationException` - If an exception occurs, `_invoke` may throw an `ApplicationException` object which contains an `InputStream` from which the user exception state may be unmarshaled.
        `RemarshalException` - If an exception occurs, `_invoke` may throw an `ApplicationException` object which contains an `InputStream` from which the user exception state may be unmarshaled.
        `NO_IMPLEMENT` - because this is a locally constrained object and this method does not apply to local objects
      See Also:
        `CORBA` package comments for unimplemented features

    - #### _releaseReply

          public void _releaseReply(InputStream input)

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method is the default implementation of the `org.omg.CORBA.Object` method.

      May optionally be called by a stub to release a reply stream back to the ORB when the unmarshaling has completed. The stub passes the `InputStream` returned by `_invoke()` or `ApplicationException.getInputStream()`. A null value may also be passed to `_releaseReply`, in which case the method is a no-op.

      Parameters:
        `input` - the reply stream back to the ORB or null
      Throws:
        `NO_IMPLEMENT`
      See Also:
        `CORBA` package comments for unimplemented features

    - #### validate_connection

          public boolean validate_connection()

      Throws an `org.omg.CORBA.NO_IMPLEMENT` exception with the message "This is a locally constrained object." This method does not apply to local objects and is therefore not implemented. This method is the default implementation of the `org.omg.CORBA.Object` method.

      Returns:
        NO_IMPLEMENT because this is a locally constrained object and this method does not apply to local objects
      Throws:
        `NO_IMPLEMENT` - because this is a locally constrained object and this method does not apply to local objects
      See Also:
        `CORBA` package comments for unimplemented features

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.