Skip to content

This project is a full-stack Distributed Online Auction System built using Java EE technologies such as Enterprise JavaBeans (EJB), Java Message Service (JMS), and WebSocket. It simulates a real-time bidding environment where users can place bids, configure auto-bid rules, and receive instant updates on auction activity.

License

Notifications You must be signed in to change notification settings

kavindu-kodikara/BidSphere

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Distributed Online Auction System BidSphere (Java EE + JMS)

🎯 Project Overview

This project is a Java EE-based Distributed Online Auction System built using Enterprise JavaBeans (EJB) and Java Message Service (JMS). It was developed as part of my academic journey to explore enterprise application architecture, asynchronous communication, and real-time system design.

The system enables users to:

  • View products
  • Place manual or auto bids
  • Participate in real-time bidding with automated bid updates

Backed by Message-Driven Beans (MDB) and Singleton Session Beans, this project simulates high-concurrency auction environments using JMS Topics for asynchronous processing and WebSocket for real-time updates.


⚙️ Technologies Used

  • Java EE (Jakarta EE)
  • Payara Server (OpenMQ embedded)
  • Enterprise JavaBeans (EJB)
    • Stateless Session Beans
    • Singleton Session Bean
    • Message-Driven Beans
  • Java Messaging Service (JMS)
  • WebSocket (for real-time updates)
  • HTML, CSS, JavaScript (for test UI)

📦 Modules

The application is structured as a Java EE EAR project with three modules:

  • Core Module – Entity and DTO classes
  • EJB Module – Business logic (bidding, user, product, auto-bid)
  • Web Module – Servlet endpoints, WebSocket server, static frontend

🧠 Key Features

  • Real-time bidding system with live updates via WebSocket
  • Auto-bidding logic: Users can set a max bid, and the system auto-bids when outbid
  • In-memory datastore using a Singleton EJB for products and users
  • JMS integration for decoupled and scalable message processing
  • Concurrency-handling tested with tools like JMeter

📸 User Interface Preview

Click the image below to watch the full walkthrough video.

Auction System Tutorial




You can also view sample UI screens.


Home



Bid



Disclaimer

This project is part of my professional portfolio. You’re welcome to reference it, but please credit me if you reuse or adapt any part of it.

License

This project is licensed under the MIT License.

About

This project is a full-stack Distributed Online Auction System built using Java EE technologies such as Enterprise JavaBeans (EJB), Java Message Service (JMS), and WebSocket. It simulates a real-time bidding environment where users can place bids, configure auto-bid rules, and receive instant updates on auction activity.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published