Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 5979203
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 22, 20262026-05-22T21:37:35+00:00 2026-05-22T21:37:35+00:00

We have two systems: external and internal, which are sharing information in JSON format

  • 0

We have two systems: external and internal, which are sharing information in JSON format (GSON library).

Information from an external system comes in internal and processed here.

Everything was very good, coming from an external system data in JSON format in the internal system data deserialize and processed. For example:

come string:

{UserLogInEvent:{userName:'Name', time:'00.00.00'}}

this string deserialize in object of this class:

UserLogInEvent implement Event {

private  String userName;
private Date time;

public UserLogInEvent (String userName, Date time)
{
this.userName = userName;
this.time = time;
}

private UserLogInEvent()
{
this.userName = null;
this.time = null;
}

public String getUserName()
{
return this.userName;
}
public Date time()
{
return this.time;
}
}

or other example:

{UserModifyFile: {userName:'Name',fileName: 'index.txt' time:'00.00.00'}}



UserModifyEvent implement Event {

private  String userName;
private String fileName;
private Date time;

public UserLogInEvent (String userName, String fileName, Date time)
{
this.userName = userName;
this.fileName = fileName;
this.time = time;
}

private UserLogInEvent()
{
this.userName = null;
this.fileName = null;
this.time = null;
}

public String getUserName()
{
return this.userName;
}
public Date time()
{
return this.time;
}
public String getFileName ()
{
return this.fileName;
}
}

The algorithm is very simple:

string -> deserialization -> object events created.

But .. further problems began. These problems I can not decide ..

Added new events.

Information that comes with an external system does not contain all necessary data about the event, for example:

{UpdateProductInfoEvent: {userName:'name', time: '00.00.00', product: {id:'123', name: '???', type: '???', cost:'???'}}}

As you can see, the line does not contain all the data … just deserialized not give a desired result …

To do this, I still need to call a method that will receive information about a product by its Id.

The algorithm is as follows:

JSON string -> processing line -> product information from ID -> object creation * Event.

The following example:

{ModifyProductCatalogEvent:{userName: 'Name', time: '00.00.00', catalog:{id:'321', catalogType:'???', catalogName: '????'}}}

Again I not have all info about catalog…

So, I ask for help, how do I properly construct an algorithm to create objects in case of lack of data?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-22T21:37:35+00:00Added an answer on May 22, 2026 at 9:37 pm

    You can write your own serialization and deserialization methods by overwriting:

     private void writeObject(java.io.ObjectOutputStream out)
         throws IOException
     private void readObject(java.io.ObjectInputStream in)
         throws IOException, ClassNotFoundException;
    

    which enables you to handle those cases yourself. You can still use the default methods by using out.defaultWriteObject/in.defaultReadObject to only have to handle the cases where data may be missing (or if you have default values for invalid objects, read all fields with the normal methods and then overwrite the invalid fields with the correct data).

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have two Slackware Linux systems on which the POSIX semaphore sem_open() call fails
I have two arrays of System.Data.DataRow objects which I want to compare. The rows
i have two tables which form part of my login/register system: these are userlogin
I have two system calls GetSystemTime() and GetThreadTimes() that I need to calculate the
We have two tasks (T1 and T2) in our vxWorks embedded system that have
I have inherited a middle tier system with some multi-Threading issues. Two different threads,
I have two identical tables and need to copy rows from table to another.
I have two applications written in Java that communicate with each other using XML
I have two arrays of animals (for example). $array = array( array( 'id' =>
I have two elements: <input a> <input b onclick=...> When b is clicked, I

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.