Open manishagupta81 opened 1 week ago
Thank you for reporting this issue.
This is a known limitation in the current form. Currently, only special alphanumeric characters separated by a slash (/
) are supported. To include special characters, they need to be escaped using \
. We are working on a fix that will be available in a future update.
Use the following rules to make the URI path compatible with Ballerina syntax:
Rules:
\
).
/zvdz/mi-qsg/v1.0
becomes /zvdz/mi\-qsg/v1\.0
./abc/123/
becomes /abc/\123
json
, string
, int
, service
, client
, etc. should be prefixed with a single quote ('
).
'service
, 'int
, 'client
.Recover Existing Code
</>
icon on the file tab, located next to the run button.Thank you. I will need to fix it through code. But i wanted to show you the below screenshot Get greeting() was created with AI Get greetingwithnoAI() was being created manually with low code.
As a next step, I tried to fix it manually and I observe below, Not sure if need escape seq here.
@manishagupta81 Thank you for your valuable feedback. You've brought up an important point.
As a next step, I tried to fix it manually and I observe below, Not sure if need escape seq here.
There's a slight syntax error in your code. You can fix it by following these steps in the low-code view:
http:Get
action back to the diagram from the coneections./zvdz/mi\-gsg/v1\.0
) in the Resource Path
field.This should resolve the issue you're experiencing. It should generate the correct syntax in the source code.
json jsonResult = check externalEP->/zvdz/mi\-gsg/v1\.0
Explanation
Let me clarify the difference between the HTTP client usage of greeting
and greetingwithnoAI
, as there is a slight syntax variation. In Ballerina, client actions can be written in two styles: RPC (remote methods) or resource access (resource methods).
greeting
function uses the remote style: cl->get("/zvdz/mi-gsg/v1.0")
. Here, the path is a string
value.greetingwithnoAI
function should be generated as cl->/zvdz/mi\-gsg/v1\.0
. In this case, the path is a URI template.The HTTP connections expose both of these variations, but we had to pick one to present in the low-code view to keep the UX uncluttered. We chose the resource access syntax, but it seems the remote style might provide a better experience.
We will re-evaluate the design and update the UX accordingly.
Description
Issue with Adding Resource in WSO2 Quick Start Guide
While following the WSO2 Quick Start Guide to create a new resource, I encountered issues when adding a resource manually through Connections -> externalEP -> get. Here are the details:
Steps to Reproduce
/zvdz/mi-qsg/v1.0
(without quotes)."/zvdz/mi-qsg/v1.0"
.invalid type for worker send 'ballerina/http:2.12.2:Client', expected value:Cloneable
invalid usage of the 'check' expression operator: no expression type is equivalent to error type
undefined worker '$missingNode$_0'
missing function keyword
Observation
When I generated the resource using AI, it ran successfully without any errors.
Steps to Reproduce
I still need to try with my upgraded VSCode and mac os
Steps to Reproduce
/zvdz/mi-qsg/v1.0
(without quotes)."/zvdz/mi-qsg/v1.0"
.invalid type for worker send 'ballerina/http:2.12.2:Client', expected value:Cloneable
invalid usage of the 'check' expression operator: no expression type is equivalent to error type
undefined worker '$missingNode$_0'
missing function keyword
Version
VS Code version 1.95
Environment Details (with versions)
macOS Sequoia 15.1