-
Notifications
You must be signed in to change notification settings - Fork 34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Need code taking into account ticketing after search and booking #89
Comments
Please help we need this ASAP, thank u and sorry for any inconvenience. |
Hi Jad, This will be available around the end of next week. Hopefully we will push the code by Next week Wednesday along with the new version 38 code. Thanks. Thanks & Regards |
Ok thank you. |
Please inform us when the final code of ticketing is available. |
Hi Jad, We have pushed the latest code. Please let me know how it goes. Thanks. Thanks & Regards |
Hi VivekJyoti, Thanks so much for the update, but after updating the code, I got this error upon executing low fare search: Caused by: java.lang.RuntimeException: You supplied a bad service/port pair (InvocationTarget):null |
Sorry it was the URLPREFIX that I should edit it to match the project path. |
One more question please, concerning the ticketing, where it is implemented currently? in lesson2?! |
Hi Jad, Apologies for the delayed reply. The Ticketing is implemented in Lesson4bad.java in Unit 2. Thanks. Thanks & Regards |
Hi VivekJyoti, Thank you, I will test it and integrate in my application to build a complete scenario of the low fare search then return to you if I have any question (it will be similar for the advanced search and hotel I guess) But now I want to make sure that I am understanding right the travelport api: Step 1: Searching, so the api will search all flights based on the user criteria (origin, destination, ...) Is this right? Thanks&Regards |
Hi Jadchahine,
Thank you, |
Hello help me please... Exception in thread "main" java.lang.ExceptionInInitializerError static public String URLPREFIX = "file:///D:/DHD/WebService-Test3/"; |
Hi AlbinGlobosoft, I believe the version v17 or v18 has been retired long ago. Please use the latest version of uapi schema. Thanks. |
I tried with uAPI_WSDLschema_Release-V19.1.0.53 but i was unable to create client code for AirService iam using IWAB0399E Error in generating Java from WSDL: java.lang.NullPointerException IWAB0399E Error in generating Java from WSDL: java.lang.NullPointerException |
Dont care about the password since i got two test credentials Universal API User ID: Universal API/uAPI-778445410 Branch Code (TargetBranch) for ProviderName (ProviderCode): Branch Code for Galileo (1G): P105195 URLs: https://emea.universal-api.pp.travelport.com/B2BGateway/connect/uAPI/ Branch Code (TargetBranch) for ProviderName (ProviderCode): Branch Code for Galileo (1G): P105195 URLs: https://emea.universal-api.pp.travelport.com/B2BGateway/connect/uAPI/ Only password differes |
Hi AlbinGlobosoft, The space should not be there. You probably getting the error, cause it is unable to find the path. |
Now the error is this: Exception in thread "main" javax.xml.ws.WebServiceException: Could not send Message. Can i directly login into if i login with my credential , i get the following error : |
When i login with my credential , i get the following error in response while inspecting it in network. { but shows error in console : Exception in thread "main" javax.xml.ws.WebServiceException: Could not send Message. |
Hi AlbinGlobosoft, You are getting this error cause your credentials are locked. We are working on to unlock them and as soon as they are unlocked I will notify you. Thanks. |
How long will it take? |
Do i need to add any jar files to bin folder in WEB-INF ? The reason why iam asking when i run the application on tomcat server it shows some of the following errors: SEVERE: Unable to process Jar entry [module-info.class] from Jar [jar:file:/D:/NewEclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/WebService-UAPI-V19-2/WEB-INF/lib/javax.xml.soap-api-1.4.0.jar!/] for annotations SEVERE: Unable to process Jar entry [module-info.class] from Jar [jar:file:/D:/NewEclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/WebService-UAPI-V19-2/WEB-INF/lib/rngom-2.3.2.jar!/] for annotations SEVERE: Unable to process Jar entry [module-info.class] from Jar [jar:file:/D:/NewEclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/WebService-UAPI-V19-2/WEB-INF/lib/txw2-2.3.2.jar!/] for annotations SEVERE: Unable to process Jar entry [module-info.class] from Jar [jar:file:/D:/NewEclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/WebService-UAPI-V19-2/WEB-INF/lib/istack-commons-runtime-3.0.8.jar!/] for annotations |
Hi AlbinGlobosoft, The account is unlocked. Please use the password which starts with "b" and it should be working fine. Thanks. |
I got the following error Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Marshalling Error: cvc-complex-type.2.4.a: Invalid content was found starting with element 'ns2:Payload'. One of '{"http://www.travelport.com/schema/common_v32_0":BillingPointOfSaleInfo}' is expected.
|
Could you please check these codes? I need only air service. |
Hi AlbinGlobosoft, This error means in the code where you are creating the request, the BillingPointOfSale is missing which is a mandatory element. The code you have shared is missing the file where you are creating the request. Thanks. |
I used the code from github https://github.com/Travelport-xx/travelport-uapi-tutorial But it shows some Marshalling Error . Could you please help me to where i need to make changes? |
When i tried to create code for Util it show some error: org.apache.cxf.tools.common.ToolException: Schema Error : Current configuration of the parser doesn't allow a maxOccurs attribute value to be set greater than the value 5,000. |
Hi AlbinGlobosoft, The codebase in github is working fine. It is quite impossible to see the actual issue without seeing your complete code. Could you please share the TestClass.java file. Regarding the util wsdl issue, Could you please try generating the class files using apache axis. The cxf does not support maxoccurs more than 5000. Also, you can try the below. Thanks. |
I got it . I used command line (cxf 3.2.1)cmd> wsimport -keep Util.wsdl [WARNING] Current configuration of the parser doesn't allow a maxOccurs attribute value to be set greater than the value 5,000. Generating code... |
Could you please help me with the above error in lesson2 ? Thanks. |
Hi AlbinGlobosoft, Please try with Wsdl2Java command to cxf rather than using wsimport. Thanks. |
I generated the code using wsimport . it seems no problem. I mentioned error was : Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Unmarshalling Error: unexpected element (uri:"http://www.travelport.com/schema/SessionContext_v1_0", local:"Code"). Expected elements are <{http://www.travelport.com/schema/common_v48_0}CommandHistory>,<{http://www.travelport.com/schema/common_v48_0}Type>,<{http://www.travelport.com/schema/common_v48_0}Description>,<{http://www.travelport.com/schema/common_v48_0}StackTrace>,<{http://www.travelport.com/schema/common_v48_0}Auxdata>,<{http://www.travelport.com/schema/common_v48_0}Service>,<{http://www.travelport.com/schema/common_v48_0}TraceId>,<{http://www.travelport.com/schema/common_v48_0}Code>,<{http://www.travelport.com/schema/common_v48_0}TransactionId> I resolved it . it was due to i had commented it because i was unable to find it setter method Thanks. |
When i run Lesson 2 i got Flight Details and Universal Record Locator QF#400 from MEL to SYD at 2019-09-27T06:00:00.000+10:00 ================================================================ More Error Details :- > at test.app.support.test2.Lesson2.main(Lesson2.java:113) : -> |
How can i get all flight details(name or flight code) to auto complete search inputs when user type into origin and destination fields? Thanks. |
Hi AlbinGlobosoft, I am seeing that you are getting 'SYSTEM ERROR OCCURRED'. it can happen due to quite a few number of reasons. I would recommend to installer fiddler tool to capture the request and response xml so that it would be easier for us to pinpoint the issue. As you said, it is happening 2nd time, it might be because you are using same itinerary and trying to book the same itinerary for the same booking traveler twice. But, if you can capture the xml request and response using fiddler and share the same, it would be very helpful for us to analyze the issue. Regarding your 2nd question about name and flight code, we have a reference data service which provide all the details about a airline and its code. Please find below the link with all the details. If you are looking for something else, Could you please elaborate the question a little bit more with example how you are expecting to see the data. Thanks. |
Can i use this data for production use ? Reference Data : These tables column differs when i tried to insert data from Reference data(RAML and RAPT) to RAML and RAPT tables according to 'formats.doc'. Help me please. Thanks. |
Hi AlbinGlobosoft, Absolutely. These are production ready data. The Column values can differe based on what kind of data you are requesting. As Airports has different data definition than Air meal type, the will generate different number of columns and data. Thanks. |
When i run Lesson2 i got the following result from = MEL , to = SYD //roundtrip QF#400 from MEL to SYD at 2019-10-01T06:00:00.000+10:00
|
How can i get all possible flight routes from all available flight vendors. if i give origin as DEL and Destination as SYD . i get buildroutings 16 for each DEL and SYD . When i merge these buildroutings i get 256(16*16) AirItineraries . If it is available itineraries can i add it in my flight view? When i tried to print all AirItinerary i got following result from Lesson2. from = DEL , to = SYD I think '0' for Outbound '1' for inbound in round trip Group Origin Destination Exception in thread "main" com.travelport.service.air_v48_0.AirFaultMessage: NO VALID FARE FOR INPUT CRITERIA when we check first result it is understandable but in the second result showing HKG to MEL instead of HKG to SYD. My main aim is to get available flights between origin and destination also its rate like the travelport demo site. Here iam taking price details for the required AirItinerary for every iteration. So it is very slow. Could you please provide me a proper solution for getting price details along with AirItinerary. Please help me. Thanks. |
Please examine above two posts also this. For One Way trip i changed the code and run 1st run from ="DEL" , to ="SYD"QF #8218 from DEL to HKG at 2019-10-04T01:05:00.000+05:30
|
Hi AlbinGlobosoft, Please find below the details regarding your questions. Thanks. You are only seeing the response from the sysout of the Lesson2. Please check the complete response using fiddler or by debugging and you will see the TotalPrice, BasePrice and Taxes are being returned in 2 currencies, one is default currency and another one is currency based on the location. Please find below the link with all the details. You are using origin as DEL and destination as SYD and as a round trip. Now, it is quite possible that the itinerary returned will use the same connecting airport or a different airport. So, say, I am going from DEL - SYD and then 5 day later will return from SYD - DEL. DEL -> CCU -> SIN -> SYD My return flights to DEL can be completely different like this, SYD -> MEL -> SIN -> MAA -> DEL Both scenarios are valid and working as expected. regarding NO VALID FARE FOR INPUT CRITERIA, it is valid error and due to test data availability in PreProduction it can happen when there is no fares available for a particular itinerary. In Pricing response, there can be one, two or more than two AirPricingSolution and it is upto the user to select the price which the user wants to book the flight with. It is a very valid scenario and in most of the cases you will receive more than one AirPricingSolution for the same classOfService. It is upto you which AirPricingSolution you would like to use to complete the booking. Please find below the link with the details. |
When i try to get price for each Air Itinerary for every iteration it is becoming too slow. Since AirItinerary list length may come upto 100 or more. is that the only way? |
Hi AlbinGlobosoft, I would not recommend running AirPrice for all the AirSegment and itineraries. It should be run only on the selected segment. To get the price of all the itineraries, you can use LowFareSearch. Please find below the details. Thanks. |
Could you please take a look at this error . i got it from accessing SeatMapReq . com.travelport.service.air_v48_0.AirFaultMessage: AirSegment @ClassOfService is required. |
Hi AlbinGlobosoft, The ClassOfService is same as BookingClass. You have to add the ClassOfService with the booking class you have selected, like Q, W, X, Y etc. In LowFareSearch it comes as <air:BookingCodeInfo BookingCounts="C9|D9|J9|Z9|Y9|A9|E9|M9|B9|K9|Q9|T9|V9|H9|G9|L9|S9|O9|N9|U9|P9"/>. This will show the classes available for booking. Now it is up to traveler which class the traveler wants to book. If the Traveler selects class Y, then AirPrice should be run using classOfService=Y and then SeatMap should be executed using the same ClassOfService. Thanks. |
I priced an itinerary from the LowFareSearchRsp using AirPriceReq. In the response i found ClassOfService for each AirSegment at AirItinerary/AirSegment . From the AirPriceRsp i requested for SeatMapReq by directly running java class i got result but from the web it takes too time for requesting . It takes about 3 min or sometimes read time out exception . Could you please extend the trial days for the following credentials if it is going to be expired? Thanks. |
Hi AlbinGlobosoft, It is not recommended to run SeatMap for all the AirSegments. The SeatMap should be run only for the selected AirSegments. For expired credentials, unfortunately there is no way to extend expired or expiring credentials. Please request for a new set of trial credentials. Thanks. |
I selected seats and i tried to book it and i got following error *** Unable to price itinerary:Key reference not found for AirSegment with key reference U8Bn9y8Q2BKAGXtBAAAAAA== inside SpecificSeatAssignment Response xml: <SOAP:Envelope I had added AirSegmentRef to SpecificSeatAssignment then it added to AirCreateReservationReq. Request & Response here: |
I get the following error when try to ticket from Universal Record Locator 'ESZ9DT' . When i searched for the universal recorder locator in travelport demo site i got it response . I have given it below(pic). Credentials : com.travelport.service.air_v48_0.AirFaultMessage: Record locator not found. /----------------------- Java Code --------
/----------------------- Putting BillingPointOfSaleInfo at first line even not helped. Could you please also provide solution for seat assignment that i posted above? Please help me. Request & Response |
Hi AlbinGlobosoft, Please find below the details regarding your questions. Thanks.
*** Unable to price itinerary:Key reference not found for AirSegment with key reference U8Bn9y8Q2BKAGXtBAAAAAA== inside SpecificSeatAssignment This needs proper AirSegmentRef key inside the request. Please find below the link to the sample requests and full SeatMap booking flow.
In ticketing it requires AirReservationLocatorCode, not the UniversalLocator code. Please use AirReservationLocatorCode for ticketing. You will be able to see the AirReservationLocator code inside the AirReservation tag in AirCreateReservationRsp. Please find below the link with the details. |
#1) I'am using carrier as QF so i think flights in QF only available in LowFareSearchRsp . I changed carrier to DL from QF then i requested for lowFareSearch and i got the error "NO AVAILABILITY FOR THIS REQUEST". i tried adding DL , A3 and AZ to permittedCarriers.getCarrier().add(carrier) collection in AirReq class. yet i'am getting only QF carriers flights. #2) I tried booking selected seats along with flight booking . I got the response #3) I checked the link that you provided for full SeatMap booking flow How can i use this link to request for seat reservation since it's showing different suppliers lilke DL, A3 , AZ etc... Because i'am only getting QF carrier flights only. if i change it some other carrier it shows "NO AVAILABILITY FOR THIS REQUEST". I just need to reserve selected seats only. It would be very helpful if you give me a solution. |
Hi AlbinGlobosoft, Please find below the details. Thanks. #1) I'am using carrier as QF so i think flights in QF only available in LowFareSearchRsp . I changed carrier to DL from QF then i requested for lowFareSearch and i got the error "NO AVAILABILITY FOR THIS REQUEST". i tried adding DL , A3 and AZ to permittedCarriers.getCarrier().add(carrier) collection in AirReq class. yet i'am getting only QF carriers flights.
#2) I tried booking selected seats along with flight booking . I got the response LogginInOut.txt PreReservedSeatAssignment is available for ACH carriers. For 1G, you have to use the AirMerchandisingFlow. https://support.travelport.com/webhelp/uapi/uapi.htm#Standalone_Merchandising/Air_Merchandising.htm #3) I checked the link that you provided for full SeatMap booking flow How can i use this link to request for seat reservation since it's showing different suppliers lilke DL, A3 , AZ etc... Because i'am only getting QF carrier flights only. if i change it some other carrier it shows "NO AVAILABILITY FOR THIS REQUEST". I just need to reserve selected seats only. You can use the flow for QF seats as well. The link I shared are actually samples and based on the carrier, you have to create the request accordingly. The request structure is same for all ATPCO carriers. https://support.travelport.com/webhelp/uapi/uapi.htm#Standalone_Merchandising/Air_Merchandising.htm |
I got error 'User is not authorized' while reserving seat with AirMerchandisingFulfillmentReq . AirMerchandisingFulfillmentReq-Res.txt It would be grateful if you could go through this code ( given in zip) . #1) How do i know that whether a seat is free or paid. if i'am right i think paid seat price attribute will not be null. Unfortunately i didn't see any paid seat. I tried displaying seat price but it was all null. #2) Could you please show me ProviderLocaterCode(PNR) and CarrierLocatorCode from the following response since it is needed for AirMerchandisingFulfillmentReq. #3) Could you please give me sample XML request and response for in-flight meal? #4) When i tried to LowFareSearch for one-way trip i got following error "User is not authorized for one way shop. " . Do i need any permission granted from travelport? #5) Could you please explain what if no seat is selected and booked a flight how can i get its seat no? Thanks. |
Hi AlbinGlobosoft, Please find below details to your question. Thanks.
It would be grateful if you could go through this code ( given in zip) . support.zip
#1) How do i know that whether a seat is free or paid. if i'am right i think paid seat price attribute will not be null. Unfortunately i didn't see any paid seat. I tried displaying seat price but it was all null. The PaidSeat=True attribute will show up in case seat is paid. #2) Could you please show me ProviderLocaterCode(PNR) and CarrierLocatorCode from the following response since it is needed for AirMerchandisingFulfillmentReq. AirCreateReservationReq.txt
#3) Could you please give me sample XML request and response for in-flight meal?
#4) When i tried to LowFareSearch for one-way trip i got following error "User is not authorized for one way shop. " . Do i need any permission granted from travelport? OneWay-LowFareSearch.txt
<ns2:AirPricingModifiers OneWayShop="true"/> #5) Could you please explain what if no seat is selected and booked a flight how can i get its seat no? In that case, the traveler can get the Seat Number during boarding process. If you book a flight without seat, seat is assigned during boarding process. |
#4) Above question , Did you mean 'lowFareSearch' as normal onewayshop (i need fair driven) ? |
Hi AlbinGlobosoft, yes, I meant by One Way LowFareSearch. For <ns2:AirPricingModifiers OneWayShop="true"/>, you need to have a permission. Please reach out to your Travelport Account Manager to provision your account for OneWayShop modifier. Thanks. |
Closing this thread. Please create a new issue for any other questions. |
Hi All,
This lesson is a great one that takes into account low fare search and booking:
https://github.com/Travelport/travelport-uapi-tutorial/blob/master/src/com/travelport/uapi/unit1/Lesson2.java
But I don't found a logic that take into account ticketing, please can you provide us a sample code for ticketing after search and booking (also for hotel booking)
Thanks&Regards
The text was updated successfully, but these errors were encountered: