{"id":25081733,"url":"https://github.com/samueladeogundev/oosd-jsp-webpage","last_synced_at":"2026-04-13T09:31:55.049Z","repository":{"id":265392643,"uuid":"895830146","full_name":"SamuelAdeogunDev/OOSD-JSP-Webpage","owner":"SamuelAdeogunDev","description":"Object Oriented Software Development Certificate Project: Java Web Client for Travel Rewards Management using JSP and JavaScript. Features AJAX-powered CRUD operations, Bootstrap-styled responsive interface, and seamless integration with the backend REST API. Built with jQuery and Bootstrap for dynamic user interactions.","archived":false,"fork":false,"pushed_at":"2024-11-30T19:27:56.000Z","size":26,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-12T06:48:50.496Z","etag":null,"topics":["ajax","bootstrap","jsp","restful-api"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SamuelAdeogunDev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-29T02:03:13.000Z","updated_at":"2024-11-30T19:27:59.000Z","dependencies_parsed_at":null,"dependency_job_id":"81fc98d5-f60e-476a-bb7f-c1b144087481","html_url":"https://github.com/SamuelAdeogunDev/OOSD-JSP-Webpage","commit_stats":null,"previous_names":["esotericrazz/oosd-jsp-webpage","samueladeogundev/oosd-jsp-webpage"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SamuelAdeogunDev/OOSD-JSP-Webpage","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SamuelAdeogunDev%2FOOSD-JSP-Webpage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SamuelAdeogunDev%2FOOSD-JSP-Webpage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SamuelAdeogunDev%2FOOSD-JSP-Webpage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SamuelAdeogunDev%2FOOSD-JSP-Webpage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SamuelAdeogunDev","download_url":"https://codeload.github.com/SamuelAdeogunDev/OOSD-JSP-Webpage/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SamuelAdeogunDev%2FOOSD-JSP-Webpage/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278283455,"owners_count":25961311,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-04T02:00:05.491Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ajax","bootstrap","jsp","restful-api"],"created_at":"2025-02-07T05:14:26.900Z","updated_at":"2025-10-04T07:52:19.279Z","avatar_url":"https://github.com/SamuelAdeogunDev.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Travel Rewards Web Client\nMade in collaboration with @[JessicaPLins]\n\nA Java-based web client for managing travel rewards, built with JSP and JavaScript. This web application provides a user interface for interacting with the Travel Rewards REST API, featuring complete CRUD operations through an intuitive interface.\n\n## Technologies Used\n- Jakarta Server Pages (JSP) for server-side rendering\n- JavaScript with jQuery for client-side interactions\n- Bootstrap 5.3 for responsive styling\n- AJAX for asynchronous API communication\n- Java Servlets for request handling\n\n## Features\n- Dynamic rewards table with real-time updates\n- Add/Edit reward form with validation\n- Delete confirmation\n- Responsive navigation\n- Cross-origin API integration\n\n## Prerequisites\n- Java Development Kit (JDK) 17 or higher\n- Apache Tomcat 10.x\n- Travel Rewards REST API running (see [REST API Repository])\n\n## Development Setup\n1. Clone the repository\n2. Configure API endpoint in `rewards.js`:\n   ```javascript\n   const API_URL = 'http://localhost:8080/TeamOneREST_war_exploded/api/rewards';\n   const APP_URL = 'http://localhost:8081/T1TravelExpertsJSP_war_exploded/rewards';\n   ```\n   Adjust the URLs according to your deployment configuration.\n\n3. Deploy to Tomcat:\n    - Using IntelliJ IDEA: Configure Tomcat Server and deploy via IDE\n    - Manual deployment: Build WAR file and deploy to Tomcat webapps directory\n\n## Project Structure\n```\nsrc/main/\n├── java/\n│   └── team/one/t1travelexpertsjsp/\n│       └── RewardsServlet.java\n├── webapp/\n│   ├── WEB-INF/\n│   ├── reward.jsp\n│   ├── rewards.jsp\n│   └── rewards.js\n```\n\n## Key Components\n\n### RewardsServlet\n- Handles routing for rewards pages\n- Manages URL patterns for viewing, creating, and editing rewards\n\n### rewards.jsp\n- Displays the main rewards listing page\n- Features a dynamic table with CRUD operations\n- Includes add new reward functionality\n\n### reward.jsp\n- Provides form for adding/editing rewards\n- Implements client-side validation\n- Handles both creation and update operations\n\n### rewards.js\n- Manages AJAX communication with REST API\n- Handles dynamic UI updates\n- Implements CRUD operations via API calls\n\n## Deployment Notes\n- The web client requires the REST API to be running and accessible\n- CORS must be properly configured on the REST API\n- For production deployment:\n    - Update API endpoints in `rewards.js`\n    - Configure appropriate error handling\n    - Implement user authentication if required\n\n## Browser Compatibility\n- Tested on modern browsers (Chrome, Firefox, Safari)\n- Requires JavaScript enabled\n- Responsive design works on mobile devices\n\n## Related Projects\n- [REST API Repository] - Backend REST API\n- [Android Client Repository] - Android client application\n\n[REST API Repository]: https://github.com/EsotericRazz/OOSD-REST-API\n[JessicaPLins]: https://github.com/JessicaPLins\n[Android Client Repository]: https://github.com/EsotericRazz/OOSD-Android-Client\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamueladeogundev%2Foosd-jsp-webpage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsamueladeogundev%2Foosd-jsp-webpage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamueladeogundev%2Foosd-jsp-webpage/lists"}