Programming Java SOAP and REST Web Services – JBoss / Eclipse Training

Pre-Requisites: Knowledge of Java programming is required. Experience with Eclipse is useful but not required. Understanding basic web architecture and the HTTP protocol, Web services, Java RMI, COM objects, etc. is helpful, but not required.

5-stars

Key Features

  • Online live classroom available
  • Quality learning materials
  • Small Class Sizes
  • State of the Art Facility
  • Free Retakes
  • Instructor Led Classroom training
  • Certified Industry Experienced Teachers
  • 100% Job Placement assistance
  • Confidently design XML schema and WSDL.
  • Tell the difference between different SOAP styles (document literal, RPC literal etc.)
  • Implement a Web Service using Eclipse and JBoss.
  • Write a Web Services client using standard Java specifications.
  • Secure JAX-WS web services.
  • Understand the REST style of software architecture
  • Describe the advantages and disadvantages of applying RESTful design strategies to various scenarios
  • Implement RESTful services using the JAX-RS Java specification
  • Create JAX-RS services that use various types of request/response content
  • Compare and contrast REST with RPC, SOAP, and other similar communication strategies
  • Use various techniques to implement clients of RESTful services
    Apply Java EE security to JAX-RS services

This course covers how to implement web services with JBoss using the most recent Java standards, JAX-WS for SOAP web services, and JAX-RS for REST web services. Since it is possible to use both web services styles, even within the same application, this course will show the student the strengths of both techniques and how to implement both types of web services properly. Testing web services is also more complicated than “normal” web applications, so this course covers the tools and techniques used to test web services in the labs.

Chapter 1. Overview of Java Web Services

  • A Conceptual Look at Services
  • Defining Services
  • Benefits of Web Services
  • Many Flavors of Services
  • Java Web Service Implementation Choices
  • Future of JAX-RPC
  • Java SOAP Web Services with JAX-WS
  • Java REST Web Services with JAX-RS
  • REST vs SOAP Summary
  • Java and XML with JAXB
  • Java Web Service Clients
  • Summary

Chapter 2. Basic XML Schemas

  • What is XML Schema ?
  • Goals of Schema
  • Converting DTDs to Schema
  • Recall: Namespaces
  • The equivalent schema
  • Sample instance document
  • Documents Needed
  • XML Schema Namespaces
  • Link Documents to Schemas
  • Inline element declarations
  • Schema Data Types
  • Schema Type Definitions
  • Schema Simple Data Types
  • Primitive Data Types
  • Simple Types
  • Facet – Restrictions on Element Content
  • Using the Facet
  • More Samples
  • Define Simple Element Type
  • Element Declaration
  • Element Occurrence Indicators
  • Complex Type
  • Attribute Declaration
  • Attribute Declaration
  • Occurrence of Attributes
  • Value Constraints on Attributes
  • Sequence Element
  • Element Choices
  • Express any order
  • Annotations

Chapter 3. The Java Architecture for XML Binding (JAXB)

  • Introduction to JAXB
  • Overview of Data Binding
  • JAXB Architecture
  • Binding Example
  • Binding Framework Example
  • Java and XML Mapping Overview
  • Namespace and Package Name Mapping
  • Simple Type Mapping
  • Complex Type Mapping
  • Customizing Complex Type Mapping
  • Property Accessor Customization
  • Property Mapping Customization
  • XML Element Mapping
  • Mapping Java Enums
  • Mapping Collections
  • Generating Java Class and Schema
  • Marshalling and Unmarshalling
  • Summary

Chapter 4. Introduction to JAX-WS

  • What is JAX-WS?
  • Advantages of JAX-WS
  • Why Do We Need a Programming Model?
  • Basic Java to WSDL Mapping
  • Developing a Service Provider
  • The Service Implementation Class
  • The Service Endpoint Interface (SEI)
  • Service Implementation Options
  • Developing a Consumer
  • Static Client Development
  • The Service Class
  • The BindingProvider Interface
  • Summary

Chapter 5. Web Services Description Language (WSDL)

  • WSDL Overview
  • WSDL Syntax Overview
  • Summary

Chapter 6. Advanced JAX-WS API

  • Publishing a Web Service
  • Web Service Context
  • Message Context
  • Working With Raw XML
  • Raw XML: Server Side
  • XML Handling Strategies
  • Raw XML: Client Side
  • Summary

Chapter 7. JAX-WS Mapping Details

  • Introduction to Mapping in JAX-WS
  • Top-down and Bottom-up Mapping
  • WSDL to Java Mapping
  • XML Data Type to JavaBean Mapping
  • Mapping to the SEI
  • Mapping the SOAP
  • Customizing WSDL to Java Mapping
  • Java to WSDL Mapping
  • JavaBean to XML Mapping
  • Mapping SEI to
  • Mapping Java Method to
  • Input Parameter Mapping
  • Method Output Mapping
  • Bare Input and Output Mapping
  • RPC Literal Style
  • Service Provider Annotation
  • Web Service Provider Example
  • Service Provider Annotations
  • JAX-WS Clients
  • Synchronous and Asynchronous Calls
  • Summary

Chapter 8. Simple Object Access Protocol (SOAP)

  • SOAP Overview
  • SOAP in Protocol Stack
  • SOAP Document Components
  • Example SOAP Request Document
  • Example SOAP Response Document
  • The Element
  • The
    Element
  • TheElement
  • SOAP Communication Style
  • Communication Style Example
  • Setting the Style in WSDL
  • RPC/Encoded Style
  • RPC/Literal Style
  • Document/Literal Style
  • Document/Literal Wrapped Style
  • Summary

Chapter 9. Web Services Interoperability (WS-I)

  • Introduction
  • Goal
  • What Comes out of WS-I?
  • WS-I Tools
  • Profiles
  • WS-I Messaging
  • Messaging Highlights
  • Service Description
  • Service Description Highlights
  • Service Publication/Discovery
  • Security
  • .NET Interoperability

Chapter 10. Building an EJB Based Web Service

  • Introduction
  • Why Use EJB as Service Implementation?
  • Implementing EJB Web Service
  • Using a Service Endpoint Interface (SEI)
  • Summary

Chapter 11. Error Handling

  • Introduction
  • Fault
  • Designing Faults
  • System Problems
  • Business Rule Violation
  • Summary

Chapter 12. JBoss Web Services and Clients

  • JBoss Web Service Deployment
  • Routing Web Service Requests
  • JBoss Web Service Deployment Descriptor
  • Writing Portable Web Service Clients for JBoss
  • Using a Packaged WSDL
  • Managed Web Service Clients
  • JBoss @WebServiceRef Customization
  • JBoss Web Service Tools
  • Summary
  • Reference

Chapter 13. Advanced JBoss Web Service Features

  • JAX-WS + WS-*
  • Apache CXF Support for WS-*
  • Implementation Choices
  • Using WS-Policy for Advanced Features
  • Using Apache CXF API for Advanced Features
  • Using Apache CXF Configuration for Advanced Features
  • So Which to Use?
  • Supplying Apache CXF Configuration File
  • Using jbossws-cxf.xml File
  • Installing Spring Modules for JBossWS
  • Setting Classpath Dependencies
  • Summary

Chapter 14. Web Services Security (WS-Security)

  • The Challenges
  • Public Key Infrastructure (PKI)
  • Digital Signature
  • Certificates
  • Overview of Web Services Security
  • SOAP Message Security
  • Message Integrity
  • Message Confidentiality
  • Symmetric Encryption Example
  • Authentication Using Identity Token
  • Authentication
  • Transport Level Security
  • Audit Tracking
  • Identity Assertion Using SAML
  • SAML SOAP Example

Chapter 15. REST Services

  • Many Flavors of Services
  • Understanding REST
  • Principles of RESTful Services
  • REST Resource Examples
  • SOAP Equivalent Examples
  • REST vs SOAP Communication
  • More REST vs SOAP
  • REST vs SOAP Summary
  • Famous RESTful Services
  • Additional Resources
  • Summary

Chapter 16. Introduction to JAX-RS

  • The JAX-RS Specification
  • The Resource Class
  • A Bunch of Annotations
  • @Path
  • Using Path Parameters
  • HTTP Method Binding
  • More Complex Paths
  • Configuring JAX-RS for Deployment
  • Summary

Chapter 17. JAX-RS Data Injection

  • Sources for Injected Data
  • Path Parameters
  • Query Parameters
  • HTML Form Input
  • Cookies
  • Matrix Parameters
  • HTTP Headers
  • Default Values
  • Parameter Conversion
  • Custom Types
  • Summary

Chapter 18. Designing a RESTful Service

  • Introduction
  • The Design Methodology
  • Ingredients of a Service Operation Interface
  • What Constitutes a REST Resource
  • Resource Identifiers
  • MIME Types
  • HTTP Methods
  • Example Operation Interface Document
  • Web Application Description Language (WADL)
  • WADL Support
  • Summary

Chapter 19. JAX-RS Content Types

  • Internet Media Types
  • Use of Media Type in REST
  • The @Consumes Annotation
  • Content Negotiation
  • The @Produces Annotation
  • The MediaType Class
  • JAXB
  • Dynamic Content Negotiation
  • Summary

Chapter 20. Building Complex JAX-RS Responses

  • HTTP Response Status Codes
  • Introduction to the JAX-RS Response Class
  • Using the Response and Response.ResponseBuilder Classes
  • Example: Conditional HTTP GET
  • Returning Cookies
  • Cookies in Response Headers
  • Reading Cookies
  • Returning an Exception
  • ExceptionMappers
  • Summary

Chapter 21. Clients of JAX-RS Services

  • Java Web Service Clients
  • Apache HttpClient
  • More Apache HttpClient Code
  • JAX-RS Implementation Client Libraries
  • RESTEasy Example
  • HATEOAS
  • Building Links with UriBuilder and UriInfo
  • Using Atom Links for State Transitions
  • WADL
  • WADL Example
  • Summary

Chapter 22. Securing JAX-RS Services

  • HTTP Basic Authentication
  • Example Client
  • The WWW-Authenticate and Authorization Headers
  • Java EE Security Roles
  • Integration with Web Container Security
  • Java EE Security Annotations
  • SecurityContext
  • Restrictions Based on Content Type
  • Summary

Chapter 23. REST vs. SOAP

  • Defining REST
  • The Six REST Architectural Style Constraints
  • The Four REST Interface Constraints
  • Hypermedia Examples
  • Defining SOAP
  • RPC SOAP vs. REST
  • Document SOAP vs. REST
  • Where SOAP Shines
  • Where REST Shines
  • Selecting an Appropriate Solution
  • Summary

What is the Objective of this training program?

This course “Programming Java SOAP and REST Web Services – JBoss / Eclipse Training” is designed to guide you to the concepts of advanced programming techniques. This training requires some coding experience in Java. We recommend you to undergo our module 1 – “Java 11” of our “Java Professional” training program to strengthen your foundation in core Java coding skills. In this course we will provide you with the knowledge to mastering advanced Java topics such as JDBC, Java SOAP, Hibernate Query Language(HQL), JSP’s Servlets, service-oriented architecture (SOA), JBoss / Eclipse, REST web services and Hibernate. This course will show the student the strengths of both web services styles within the same application and how to implement both types of web services properly. Testing web services is also more complicated than “normal” web applications, so this course covers tools and techniques used to test web services in the labs.

What is a Web Service?

Web Services work on a client-server model where client applications can access web services over the network. Web services provide endpoint URLs and expose methods that can be accessed over the network through client programs written in Java, shell script or any other different technologies. Web services are stateless and don’t maintain user session like web applications.

What are the different types of Web Services?
There are two types of web services:

SOAP Web Services: Runs on SOAP protocol and uses XML technology for sending data.

Restful Web Services: It’s an architectural style and runs on HTTP/HTTPS protocol almost all the time. REST is a stateless, client-server architecture where web services are resources and can be identified by their URIs. Client applications can use HTTP GET/POST methods to invoke Restful web services.

What is SOAP?

SOAP stands for Simple Object Access Protocol. SOAP is an XML based industry-standard protocol for designing and developing web services. Since it’s XML based, it’s platform and language independent. Our server can be found on JAVA and client can be on .NET, PHP etc. and vice versa.

What is REST Web Services?

REST is the acronym for REpresentational State Transfer. REST is an architectural style for developing applications that can be accessed over the network. REST architectural style was brought in light by Roy Fielding in his doctoral thesis in 2000.

REST is a stateless client-server architecture where web services are resources and can be identified by their URIs. Client applications can use HTTP GET/POST methods to invoke Restful web services. REST doesn’t specify any specific protocol to use, but in almost all cases it’s used over HTTP/HTTPS. When compared to SOAP web services, these are lightweight and doesn’t follow any standard. We can use XML, JSON, text or any other type of data for request and response.

Why should I become a Java Professional?

Here are a few reasons:

1) Java is one of the most widely used programming languages. There is no denying Java’s popularity using more than nine million developers on seven billion devices worldwide. Despite being released over 20 years ago, Java has been at the top of the TIOBE index, the measure of popularity within programming languages, for the last decade. Job prospects for people with Java skills are excellent with roles available across many different sectors.

2) There is more to Java developing than coding. When you become a Java developer, your work is varied due to the many different tasks that Java developers oversee. From designing interfaces to creating and testing dynamic applications, Java developers involved in every development process stage.

3) Java development is collaborative. An advantage of being involved throughout the development process is that Java developers collaborate with other professionals, such as Web Designers, Web Developers and Software Engineers. Collaboration develops communication and other transferable skills, which help advance your career as an IT professional.

4) Java is used in real-world applications. From healthcare to financial services, Java is used across many different business sectors and popular websites such as Facebook, Amazon and eBay. So, as Java developer, it is likely that your work will benefit not just the company you work for but also many ordinary people in real-life scenarios.

What role do Java developers play in IT development?

Java developers create complex web-based applications. Some examples include animated drop-down menus, images that change as a mouse moves over them, and sounds that play when clicked. Java is used extensively on e-commerce sites to collect data and validate user information. It is the job of Java developers to use this scripting language to modify the design and functionality of websites as requested by their clients. Java developers may write programs themselves or revise existing applications. They also identify opportunities to fine-tune and optimize applications of java developed projects. Java developers will often test programs to verify that they work correctly. This responsibility includes resolving technical issues through debugging, research and investigation. Java developers will also often mentor and provide technical guidance and instruction to lower-level IT staff, assisting with specific problems requiring a broad knowledge of subject matter processing.

Technology in the IT world is constantly changing, so knowledge becomes outdated in a few years. Therefore, a love of learning is essential for Java developers. Good researching skills are also crucial because there will always be new technologies to learn about. Java developers typically work on a team, so being a team player is extremely important. Good communication skills are also a must because Java developers must communicate effectively with their team and with clients.

What will I be able to do after successfully finishing the program?

After completing the 3 modules of our Java Professional training program, you will be able to:

  • Utilize new Java features
  • Identify deprecated APIs and possible alternatives
  • Swap sub-optimal or tedious coding with convenience methods
  • Create a modular Java application
  • Create a custom runtime image
  • Build Multi-release JAR files
  • Design interfaces which implement methods
  • Process stream data using new convenience methods
  • Leverage JShell for fast code experiments
  • Identify and apply new methods to more conveniently work with collections and arrays
  • Develop web front-ends using Servlets, Java Server Pages, and Java Server
  • Confidently design XML schema and WSDL.
  • Tell the difference between different SOAP styles (document literal, RPC literal etc.)
  • Implement a Web Service using Eclipse and JBoss.
  • Write a Web Services client using standard Java specifications.
    Secure JAX-WS web services.
  • Understand the REST style of software architecture
  • Describe the advantages and disadvantages of applying RESTful design strategies to various scenarios
  • Implement RESTful services using the JAX-RS Java specification
  • Create JAX-RS services that use various types of request/response content
  • Compare and contrast REST with RPC, SOAP, and other similar communication strategies
  • Use various techniques to implement clients of RESTful services
  • Apply Java EE security to JAX-RS services

Are Java Professionals in Demand?

As for the demand for Java developers, it stays at a very high-level year after year. According to a recent report by analytical company Burning Glass, Java Developer is one of the most common tech occupations in the U.S., with a total number of open job postings nearly reaching 4000 in February 2020 in the U.S. alone.

**Java-related job postings on Collabera increased 80 percent between 2017 and 2018, from 3,469 to 6,243 — impressive for a programming language that’s been around for nearly 25 years. ­

Who are the instructors at Global IT?

All the instructors at Global IT are practitioners from the Industry with minimum 8-10 years of relevant IT experience. They are subject matter experts and are passionate for providing an awesome learning experience to the participants.

What is the role of Java developer?

A Java Developer is responsible for the design, development, and management of Java-based applications. Because Java is used so widely, particularly by large organizations, the daily roles vary widely, but can include owning a particular application or working on several at one time. In many cases, a Java developer’s job description goes well beyond mere computer programming. Many roles require that Java developers embrace taking part in full software development lifecycles and strive to improve the overall product by researching alternative ways and technologies to achieve the overall goal.

  • Designing, implementing, and maintaining Java applications that are often high-volume and low-latency, required for mission-critical systems
  • Delivering high availability and performance
  • Contributing in all phases of the development lifecycle
  • Writing well-designed, efficient, and testable code
  • Conducting software analysis, programming, testing, and debugging
  • Managing Java and Java EE application development
  • Ensuring designs comply with specifications
  • Preparing and producing releases of software components
  • Transforming requirements into stipulations
  • Support continuous improvement
  • Investigating alternatives and technologies
  • Presenting for architectural review

What are a few possible career paths and opportunities for Java Professional?

There is a good demand for java programmers all over the world. The job roles on completing our java professional course include Java Developer, Java Software Developer / Programmer, Java Programmer, Java Web Software Developer, Web developer, Application Developer, Web Programmer and EJB Programmer among others.

Does Global IT offer job assistance?

Global IT actively provides 100% Job placement assistance to all learners who have completed the training. For this, we are exclusively tied-up with top employers/ recruiting partners. We also help you with the job interview and résumé preparation part as well.

Will the Job Assistance Program Guarantee Me A Job?

In our Job Assistance program, we will be helping you land in your dream job by sharing your resume to potential recruiters and assisting you with resume building, preparing you for interview questions. GIT’s training should not be regarded either as a job placement service or as a guarantee for employment. The entire employment process will take part between the learner and the recruiter companies directly, and the final selection is always dependent on the recruiter.

What are the prerequisites for getting enrolled in this training course?

Be competent in creating programs in any programming language. Understand object-oriented principles Basic understanding of database concepts and SQL syntax.

How are the jobs for Java Professional in general?

An entry-level Java Developer with less than 1-year experience can expect to earn an average total compensation (includes tips, bonus, and overtime pay) of $59,798 based on 218 salaries. An early career Java Developer with 1-4 years of experience earns an average total compensation of $71,311 based on 984 salaries. A mid-career Java Developer with 5-9 years of experience earns an average total compensation of $83,967 based on 569 salaries. An experienced Java Developer with 10-19 years of experience earns an average total compensation of $98,411 based on 228 salaries. In their late-career (20 years and higher), employees earn an average total compensation of $102,572. www.payscale.com

Popular Employer Salaries for Java Developer-

J.P. Morgan Chase & Co. (JPMCC) $93k
The Vanguard Group $62k
InfoSys Limited $73k
NTT Data Corporation $73k
Cognizant Technology Solutions Corp $66k
Tata Consultancy Services Limited $74k
Verizon Communications, Inc. $90k
Leidos $81k

Course Number : JAVA-5-0300

Duration : 40 hours

[]
1 Step 1

Request Information!

Who you are?
First Nameyour first name
Last Nameyour last name
Address
City
ZipZip
Phone Number
Commentsmore details
0 /

By submitting this form, you are giving your express written consent for Global Information Technology to contact you regarding our programs and services using email, telephone or text.  This consent is not required to purchase goods/services, and you may always call us directly at 1-866-464-4846.

Previous
Next