Giter VIP home page Giter VIP logo

aot-technologies / forms-flow-ai Goto Github PK

View Code? Open in Web Editor NEW
331.0 22.0 187.0 63.97 MB

formsflow.ai is an open source forms-workflow-analytics solution framework.

Home Page: https://formsflow.ai/

Dockerfile 0.18% Java 11.13% JavaScript 67.61% CSS 0.82% HTML 0.04% Shell 0.18% Python 14.02% Mako 0.02% SCSS 0.80% Batchfile 0.03% Makefile 0.28% Jupyter Notebook 4.22% EJS 0.12% FreeMarker 0.53%
analytics bpmn forms hacktoberfest java python react

forms-flow-ai's Introduction


FormsFlow WEB CI FormsFlow API CI FormsFlow BPM CI Join the chat at https://gitter.im/forms-flow-ai/community Join the chat at https://stackoverflow.com/questions/tagged/formsflow.ai

formsflow.ai is a Free, Open-Source, Low Code Development Platform for rapidly building powerful business applications. formsflow.ai combines leading Open-Source applications including form.io forms, Camunda’s workflow engine, Keycloak’s security, and Redash’s data analytics into a seamless, integrated platform.

How It Works ?

Check out the installation documentation for installation instructions and features documentation to explore features and capabilities in detail.

License

Copyright 2020 AppsOnTime-Technologies 2020

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

forms-flow-ai's People

Contributors

abhilash-aot avatar abijiths-aot avatar abilpraju-aot avatar ajay-aot avatar alanraju-aot avatar amal-k-soman-aot avatar ambadi-aot avatar arun-s-aot avatar auslin-aot avatar bonymol-aot avatar chunthebear avatar devin-aot avatar fahad-aot avatar gbates101 avatar guru-aot avatar josephalexantony-aot avatar kiran-aot avatar midhuns-aot avatar ratheesh-aot avatar rintumerin-aot avatar saravanpa-aot avatar seethalelias-aot avatar shibin-aot avatar shuhaib-aot avatar sinto-aot avatar snehasuresh-aot avatar sreehari-aot avatar sumathi-thirumani avatar sumesh-aot avatar yaseen-aot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

forms-flow-ai's Issues

The Camunda component can't be rebuilt when a database already exists in its directory

Bug Report

Please provide information about your setup

  • formsflow.ai Version: v4.0.2
  • Browser: (irrelevant)
  • Browser version: (irrelevant)

Steps to Reproduce

  1. Have forms-flow-bpm up and running with its postgres database.
  2. Try to rebuild with the following command, suggested by the documentation:
docker-compose -f docker-compose-windows.yml up --build -d

Observed Behaviour

The build doesn't happen with the following error message:

$ docker-compose -f docker-compose-linux.yml up --build -d
Building forms-flow-bpm
error checking context: 'can't stat '/home/ec2-user/forms-flow-ai/forms-flow-bpm/postgres/camunda''.
ERROR: Service 'forms-flow-bpm' failed to build : Build failed

Expected Behaviour

The build should run properly.

Additional info

We managed to rebuild the software with the following process:

docker-compose -f docker-compose-linux.yml stop
sudo mv postgres/ ../postgres-backup
docker-compose -f docker-compose-linux.yml build
sudo mv ../postgres-backup postgres
docker-compose -f docker-compose-linux.yml up -d

Renaming postgres to postgres-backup-2021-10-05 was not enough in this case, the build process still found the directory with this name, had to move out of the component's directory.

Custom logic in button actions

From my understanding, form.emit(submitDone, custom function) is used to trigger the custom function written for the form submission instead of the default one. Also, this custom function needs to be defined along with the custom logic.
My question is, we already have application/create(5000 port i.e. formsflow API) and form/submission(3001 port. i.e. formio api) defined. Is it possible to trigger these functions without having to write the entire API fetch request in the logic part?

cc: @abhilash-aot

Provide way to upload self signed certs for use

Being this is a development/trial environment and some items in the requirements require SSL it would be good to be able to load self signed certs onto the various machines and have them trust them. This is for both the environment and java.

In my very low level dev abilities I made this happen and posted this as a fix to an issue on the BPM.

It would be even more awesome if it could also be hosted as SSL with certs as well.

Demo Bundle

Hi, I think it's a very interesting project and a demo bundle with Keycloak preinstalled and fully functional sample data for testing purpose could be interesting.

Configuration file problem

For the following parameters, I see the official website and ask me to request this address to obtain

[
{
"_id": "60814598157e62584d74c7b1",
"description": "A role for Administrative Users.",
"default": false,
"admin": true,
"title": "Administrator",
"machineName": "administrator",
"created": "2021-04-22T09:44:56.724Z",
"modified": "2021-05-17T02:06:47.009Z"
},
{
"_id": "60814598157e62ac7674c7b3",
"description": "A role for Anonymous Users.",
"default": true,
"admin": false,
"title": "Anonymous",
"machineName": "anonymous",
"created": "2021-04-22T09:44:56.809Z",
"modified": "2021-05-17T02:06:47.029Z"
},
{
"_id": "60814598157e6269ca74c7b2",
"description": "A role for Authenticated Users.",
"default": false,
"admin": false,
"title": "Authenticated",
"machineName": "authenticated",
"created": "2021-04-22T09:44:56.802Z",
"modified": "2021-05-17T02:06:47.022Z"
}
]

CLIENT_ROLE_ID=60814598157e62ac7674c7b3
DESIGNER_ROLE_ID=60814598157e62584d74c7b1
REVIEWER_ROLE_ID=60814598157e62ac7674c7b3
ANONYMOUS_ID=60814598157e62ac7674c7b3
USER_RESOURCE_ID=1

How do I get the values of CLIENT_ROLE_ID and USER_RESOURCE_ID?
Thank u,guards

port 8000 camunda cockpit auto timeout in 30 sec after login

we have setup the AWS environment with all stacks running such as formsform frontend, formsform backend, dashboard and camunda service. all the rest of services are running fine, however after successfully login using "formsform-designer" user to the port 8000 (camunda cockpit). within 30sec, the authentication to cockpit page will be timed out and redirected to the keycloak login page again.

steps to reproduce:

  • access: http://<internal_ip>:8000/camunda/app/cockpit/
  • login with "formsform-designer" user
  • browse the process for a few seconds
  • auth session timeout and redirected to login page <-- problem

please help and advise

forms-flow-api continually reboots

Bug Report

Please provide information about your setup

  • formsflow.ai Version: latest
  • Browser: Not related
  • Browser version: net related

Steps to Reproduce

1.Install configure Keycloak
2.configure environmental variables for either full docker deployment or just web api docker
3. Build web-api
4. start web api
5. docker ps -a

Observed Behaviour

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
602a4549b46c forms-flow-api_forms-flow-webapi "/bin/sh entrypoint" 15 minutes ago Restarting (1) 37 seconds ago forms-flow-api_forms-flow-webapi_1

open the logs:

[nltk_data] Downloading package vader_lexicon to /root/nltk_data...
[nltk_data] Package vader_lexicon is already up-to-date!
[nltk_data] Downloading package punkt to /root/nltk_data...
[nltk_data] Package punkt is already up-to-date!
[nltk_data] Downloading package subjectivity to /root/nltk_data...
[nltk_data] Package subjectivity is already up-to-date!
Configure logging, from conf:/usr/local/lib/python3.8/site-packages/api/logging.conf
Traceback (most recent call last):
File "manage.py", line 14, in
APP = create_app()
File "/usr/local/lib/python3.8/site-packages/api/init.py", line 27, in create_app
mongo.init_app(app)
File "/usr/local/lib/python3.8/site-packages/flask_pymongo/init.py", line 147, in init_app
parsed_uri = uri_parser.parse_uri(uri)
File "/usr/local/lib/python3.8/site-packages/pymongo/uri_parser.py", line 514, in parse_uri
nodes = split_hosts(hosts, default_port=default_port)
File "/usr/local/lib/python3.8/site-packages/pymongo/uri_parser.py", line 364, in split_hosts
nodes.append(parse_host(entity, port))
File "/usr/local/lib/python3.8/site-packages/pymongo/uri_parser.py", line 118, in parse_host
raise ValueError("Port must be an integer between 0 and 65535: %s"
ValueError: Port must be an integer between 0 and 65535: port

Expected Behaviour

For it to start running and be accessable on 5000

Problems during docker build

Camunda token expired when requests Form.io

Bug Report

I'm reporting it because I think it may be useful for someone testing it in their local machines. It shouldn't happen in a production environment though.

Camunda has a scheduled process "Formio Access Token Cache (Internal)" that tries to access the network but with WSL2 sometimes
the network is not available for some reason and the process fail.

Setup

  • Formsflow.ai version: 4.0.4
  • Windows with WSL2
  • Using configuration from forms-flow-ai/deployment/docker

Steps to Reproduce

  1. Configure and deploy formsflow.ai and start using it with a form and workflow
  2. Put the windows machine to sleep overnight
  3. Next day, try to submit a form and the message should be successful
  4. Checking next tasks or the Camunda workflow you may notice the workflow process didn't start for the form you have just submitted
  5. Checking Camunda server logs you may see something similar to this:
Warning: Nashorn engine is planned to be removed from a future JDK release

2022-02-01 16:57:16.767 ERROR 1 --- [nio-8080-exec-8] org.camunda.bpm.engine.context           : ENGINE-16004 Exception while closing command context: Unknown status code [440]


org.springframework.web.reactive.function.client.UnknownHttpStatusCodeException: Unknown status code [440]

at org.springframework.web.reactive.function.client.DefaultClientResponse.lambda$createException$1(DefaultClientResponse.java:224) ~[spring-webflux-5.3.8.jar!/:5.3.8]

Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException: 

Error has been observed at the following site(s):

|_ checkpoint ⇢ 440 from PATCH http://host.docker.internal:3001/form/61f1c27c52e45d624abe9758/submission/61f9666c42bd44fb993a13e9 [DefaultWebClient]

Stack trace:

at org.springframework.web.reactive.function.client.DefaultClientResponse.lambda$createException$1(DefaultClientResponse.java:224) ~[spring-webflux-5.3.8.jar!/:5.3.8]

at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:106) ~[reactor-core-3.4.7.jar!/:3.4.7]

at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:79) ~[reactor-core-3.4.7.jar!/:3.4.7]

at reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.onNext(FluxDefaultIfEmpty.java:100) ~[reactor-core-3.4.7.jar!/:3.4.7]
  1. Go to Camunda Cockpit Dashboard and check the processes: http://localhost:8000/camunda/app/cockpit/default/#/processes
  2. Look for "Formio Access Token Cache (Internal)" and check its state. It may be in an error state.

Steps to manually fix it

  1. Go to Camunda Tasklist (http://localhost:8000/camunda/app/tasklist/default/) and click on "Start process"
  2. Click on "Formio Access Token Cache (Internal)" and "Start"
  3. Go to Camunda Cockpit Dashboard and check the processes: http://localhost:8000/camunda/app/cockpit/default/#/processes
  4. Look for "Formio Access Token Cache (Internal)" and check the latest execution state. It should be successful.
  5. If you try a new form submission it should work now.

BPM container doesn't run successfully

Bug Report

Please provide information about your setup

  • formsflow.ai Version: latest
  • Browser: not related
  • Browser version: not related

Steps to Reproduce

  1. Installed, configured & tested (using Postman) Keycloak Server
  2. Neither the full deployment (tested on Docker for Windows & Docker on Ubuntu Server) nor
    https://github.com/AOT-Technologies/forms-flow-ai/tree/master/forms-flow-bpm
    brings up the BPM container (restarts all the time)

Observed Behaviour

BPM Container crashes / restarts with error message:
2020-12-14 12:29:30.205 INFO 1 --- [ main] o.apache.http.impl.execchain.RetryExec : I/O exception (org.apache.http.conn.UnsupportedSchemeException) caught when processing request to {}->http://localhost:8080: http protocol is not supported

2020-12-14 12:29:30.205 INFO 1 --- [ main] o.apache.http.impl.execchain.RetryExec : Retrying request to {}->http://localhost:8080

2020-12-14 12:29:30.206 INFO 1 --- [ main] o.apache.http.impl.execchain.RetryExec : I/O exception (org.apache.http.conn.UnsupportedSchemeException) caught when processing request to {}->http://localhost:8080: http protocol is not supported

2020-12-14 12:29:30.206 INFO 1 --- [ main] o.apache.http.impl.execchain.RetryExec : Retrying request to {}->http://localhost:8080

2020-12-14 12:29:30.206 INFO 1 --- [ main] o.apache.http.impl.execchain.RetryExec : I/O exception (org.apache.http.conn.UnsupportedSchemeException) caught when processing request to {}->http://localhost:8080: http protocol is not supported

2020-12-14 12:29:30.206 INFO 1 --- [ main] o.apache.http.impl.execchain.RetryExec : Retrying request to {}->http://localhost:8080

2020-12-14 12:29:30.207 ERROR 1 --- [ main] org.camunda.bpm.extension.keycloak : KEYCLOAK-01011 TOKEN request failed: I/O error on POST request for "http://localhost:8080/auth/realms/forms-flow-ai/protocol/openid-connect/token": http protocol is not supported; nested exception is org.apache.http.conn.UnsupportedSchemeException: http protocol is not supported
If possible provide a screenshot to demonstrate the bug.

Expected Behaviour

The application should be up and available for use at port defaulted to 8000 in application.yaml http://localhost:8000/camunda/

Formio incorrectly shows membership

Bug Report

Please provide information about your setup

  • formsflow.ai Version: Docker Full Deployment
  • Browser: Edge and Chrome
  • Browser version: Latest

Steps to Reproduce

  1. Follow install procedures for Docker Install
  2. Sign in with a user that is part of formsflow-designer group

Observed Behaviour

Formio lists you as a reviewer:
IncorrectGroup

If possible provide a screenshot to demonstrate the bug.

Expected Behaviour

Show user as a Designer

Email Notification

I have run the latest branch formflow.ai and also configure the notifyListener will will send email when the task is created to a group of users that are defined in the keyclock as clerk.

I wondered if there is another listener where is send individuals email when the task is created.

Example: Task A is created and automatically assigned to TOM and when the listener will called , it will notify ONLY TOM(get his email address from the form.)

Is there any functionality or this can be tweaked.

Thank you.

formfs-flow-analytics -> keycloak error "LOGIN_ERROR" client_not_found

Hi there,

ive configured keycloak and analytics as described in: https://github.com/AOT-Technologies/forms-flow-ai/tree/master/forms-flow-analytics#configuration-of-keycloak-saml-setup

But when trying to logon with saml Im getting a "invalid request" error:
image

image

The config .env of analytics is almost default:
image

Login to keycloak itself is working and the realm and client got created automatically.
image

Any ideas where I could have a look to?

Kind regards,
Constey

Included Workflows do not function

Bug Report

Please provide information about your setup

  • formsflow.ai Version: Docker Full Deployment
  • Browser: Chrome/IE
  • Browser version: Latest

Steps to Reproduce

1.Full install according to instruction
2.Create Form and attach any of the included workflows, save
3.Use form and submit

Observed Behaviour

No task shows up
Errors on Web API with 500 internal server error are received. In camunda this is a bit ambiguous.

If possible provide a screenshot to demonstrate the bug.

Expected Behaviour

Task to be assigned to a particular group

###Note###
If one creates a basic user task it does function and it does show in the forms task list at least for a designer.

Camunda unable to get access token from Keycloak server

Bug Report

Please provide information about your setup

  • formsflow.ai Version: latest code from git repo
  • Browser: Edge
  • Browser version:

Steps to Reproduce

  1. Followed steps to install Keycloak server based on the following instructions -> https://github.com/AOT-Technologies/forms-flow-ai/blob/master/forms-flow-idm/keycloak-setup.md and I was able to verify Postman calls to test the forms-flow-bpm access to get access token from Keycloak server and verified access token in jwt.io website.
  2. Followed the steps https://github.com/AOT-Technologies/forms-flow-ai/tree/master/forms-flow-bpm to try and get the Workflow engine running but got the following error while running docker-compose

Note I've filled in the following env variables in .env under forms-flow-bpm folder

Environment Variables for Keycloak

KEYCLOAK_URL=https://xxxxxx.ngrok.io
KEYCLOAK_URL_REALM=forms-flow-ai
KEYCLOAK_BPM_CLIENTID=forms-flow-bpm
KEYCLOAK_BPM_CLIENTSECRET=[i've copied and pasted the same client secret i've used to verify in Postman here]

Observed Behaviour

2021-06-06

Expected Behaviour

That Camunda could start and I should be able to access it via http://localhost:8000

Fail to install Analytics Engine following the instructions

Bug Report

Please provide information about your setup

  • formsflow.ai Version: RC4.0.0
  • Browser: Chrome
  • Browser version: Latest

Steps to Reproduce

  1. Create a new VM and install a fresh copy of Rocky Linux 8.4
  2. Follow the steps in https://github.com/AOT-Technologies/forms-flow-ai/tree/master/deployment/docker
  3. Follow Keycloak steps in https://github.com/AOT-Technologies/forms-flow-ai/blob/master/forms-flow-idm/keycloak/README.md (Everything OK)
  4. Follow forms-flow-analytics steps in https://github.com/AOT-Technologies/forms-flow-ai/blob/master/forms-flow-analytics/README.md
  5. In "Running the application" https://github.com/AOT-Technologies/forms-flow-ai/blob/master/forms-flow-analytics/README.md#running-the-application
  6. Running "docker-compose -f docker-compose-linux.yml run --rm server create_db" works OK
  7. Running "docker-compose -f docker-compose-linux.yml up -d" fails

Observed Behaviour

# docker-compose -f docker-compose-linux.yml up -d
Building adhoc_worker
unable to prepare context: unable to 'git clone' to temporary context directory: error fetching: /usr/libexec/git-core/git-remote-https: /tmp/_MEIGDn5IA/libssl.so.1.1: version `OPENSSL_1_1_1' not found (required by /lib64/libcurl.so.4)
/usr/libexec/git-core/git-remote-https: /tmp/_MEIGDn5IA/libcrypto.so.1.1: version `OPENSSL_1_1_1' not found (required by /lib64/libssh.so.4)
/usr/libexec/git-core/git-remote-https: /tmp/_MEIGDn5IA/libcrypto.so.1.1: version `OPENSSL_1_1_1b' not found (required by /lib64/libssh.so.4)
/usr/libexec/git-core/git-remote-https: /tmp/_MEIGDn5IA/libcrypto.so.1.1: version `OPENSSL_1_1_1b' not found (required by /lib64/libk5crypto.so.3)
: signal: broken pipe
ERROR: Service 'adhoc_worker' failed to build : Build failed

Expected Behaviour

It should start so we can continue with the next step (forms-flow-forms Setup)

Not able to see submitted applications in tasks to approve

I am trying a submit a form with two step approval process from client and review it from clerk/reviewer. Form submitted and also showing in applications while log in from clerk/reviewer but tasks are not displaying so how to review these applications.
Another scenario - For one application, task is showing and option to claim it but action section is not displaying to review it.
Please help.

Export Keycloak for Import

This project appears to be dependent on Keycloak and some specific settings. I would highly suggest that you perform an Export from a good working Keycloak Realm instance and provide to the system installer as a template. The instructions are missing some items and are a bit hard to follow. A baseline template would be immensely helpful. The instruction should stay and also improved as this does help one to understand some of it.

issue with camunda alpha build still

I followed the directions to a t, but when I build with docker I get this, I even used the automated keycloak setup (I also setup a secure keycloak server before that).

| Camunda BPM Spring Boot Starter: (v7.13.0)
forms-flow-bpm_1 |
forms-flow-bpm_1 | 2021-05-26 14:51:50.339 INFO 1 --- [
main] o.c.b.e.k.showcase.CamundaApplication : Starting CamundaApplication using Java 11.0.3 on 989965dc503a with PID 1 (/app/camunda-bpm-identity-keycloak-examples-sso-kubernetes.jar started by root in /app)
forms-flow-bpm_1 | 2021-05-26 14:51:50.352 DEBUG 1 --- [
main] o.c.b.e.k.showcase.CamundaApplication : Running with Spring Boot v2.4.2, Spring v5.3.3
forms-flow-bpm_1 | 2021-05-26 14:51:50.353 INFO 1 --- [
main] o.c.b.e.k.showcase.CamundaApplication : No active profile set, falling back to default profiles: default
forms-flow-bpm_1 | WARNING: An illegal reflective access operation
has occurred
forms-flow-bpm_1 | WARNING: Illegal reflective access by org.codehaus.groovy.reflection.CachedClass (jar:file:/app/camunda-bpm-identity-keycloak-examples-sso-kubernetes.jar!/BOOT-INF/lib/groovy-2.5.14.jar!/) to method java.lang.Object.finalize()
forms-flow-bpm_1 | WARNING: Please consider reporting this to the maintainers of org.codehaus.groovy.reflection.CachedClass
forms-flow-bpm_1 | WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
forms-flow-bpm_1 | WARNING: All illegal access operations will be denied in a future release
forms-flow-bpm_1 | 2021-05-26 14:51:50.782 WARN 1 --- [
main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [org.camunda.bpm.extension.keycloak.showcase.CamundaApplication]; nested exception is org.springframework.context.annotation.ConflictingBeanDefinitionException: Annotation-specified bean name 'keycloakAuthenticationConverter' for bean class [org.camunda.bpm.extension.keycloak.showcase.rest.KeycloakAuthenticationConverter] conflicts with existing, non-compatible bean definition of same name and class [org.camunda.bpm.extension.keycloak.showcase.sso.KeycloakAuthenticationConverter]
forms-flow-bpm_1 | 2021-05-26 14:51:50.799 INFO 1 --- [
main] ConditionEvaluationReportLoggingListener :
forms-flow-bpm_1 |
forms-flow-bpm_1 | Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
forms-flow-bpm_1 | 2021-05-26 14:51:50.824 ERROR 1 --- [
main] o.s.boot.SpringApplication : Application run failed
forms-flow-bpm_1 |
forms-flow-bpm_1 | org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [org.camunda.bpm.extension.keycloak.showcase.CamundaApplication]; nested exception is org.springframework.context.annotation.ConflictingBeanDefinitionException: Annotation-specified bean name 'keycloakAuthenticationConverter' for bean class [org.camunda.bpm.extension.keycloak.showcase.rest.KeycloakAuthenticationConverter] conflicts with existing, non-compatible bean definition of same name and class [org.camunda.bpm.extension.keycloak.showcase.sso.KeycloakAuthenticationConverter]
forms-flow-bpm_1 | at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:189) ~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:336) ~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:252) ~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:285) ~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:99) ~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:751) ~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:569) ~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144) ~[spring-boot-2.4.2.jar!/:2.4.2]
forms-flow-bpm_1 | at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767) ~[spring-boot-2.4.2.jar!/:2.4.2]
forms-flow-bpm_1 | at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759) ~[spring-boot-2.4.2.jar!/:2.4.2]
forms-flow-bpm_1 | at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426) ~[spring-boot-2.4.2.jar!/:2.4.2]
forms-flow-bpm_1 | at org.springframework.boot.SpringApplication.run(SpringApplication.java:326) ~[spring-boot-2.4.2.jar!/:2.4.2]
forms-flow-bpm_1 | at org.springframework.boot.SpringApplication.run(SpringApplication.java:1311) ~[spring-boot-2.4.2.jar!/:2.4.2]
forms-flow-bpm_1 | at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300) ~[spring-boot-2.4.2.jar!/:2.4.2]
forms-flow-bpm_1 | at org.camunda.bpm.extension.keycloak.showcase.CamundaApplication.main(CamundaApplication.java:68) ~[classes!/:na]
forms-flow-bpm_1 | at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
forms-flow-bpm_1 | at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
forms-flow-bpm_1 | at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
forms-flow-bpm_1 | at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
forms-flow-bpm_1 | at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[camunda-bpm-identity-keycloak-examples-sso-kubernetes.jar:na]
forms-flow-bpm_1 | at org.springframework.boot.loader.Launcher.launch(Launcher.java:107) ~[camunda-bpm-identity-keycloak-examples-sso-kubernetes.jar:na]
forms-flow-bpm_1 | at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[camunda-bpm-identity-keycloak-examples-sso-kubernetes.jar:na]
forms-flow-bpm_1 | at org.springframework.boot.loader.PropertiesLauncher.main(PropertiesLauncher.java:467) ~[camunda-bpm-identity-keycloak-examples-sso-kubernetes.jar:na]
forms-flow-bpm_1 | Caused by: org.springframework.context.annotation.ConflictingBeanDefinitionException: Annotation-specified bean name 'keycloakAuthenticationConverter' for bean class [org.camunda.bpm.extension.keycloak.showcase.rest.KeycloakAuthenticationConverter] conflicts with existing, non-compatible bean definition of same name and class [org.camunda.bpm.extension.keycloak.showcase.sso.KeycloakAuthenticationConverter]
forms-flow-bpm_1 | at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.checkCandidate(ClassPathBeanDefinitionScanner.java:349) ~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.doScan(ClassPathBeanDefinitionScanner.java:287) ~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | at org.springframework.context.annotation.ComponentScanAnnotationParser.parse(ComponentScanAnnotationParser.java:132) ~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | at org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass(ConfigurationClassParser.java:296) ~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:250)
~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:207) ~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:175) ~[spring-context-5.3.3.jar!/:5.3.3]
forms-flow-bpm_1 | ... 22 common frames omitted
forms-flow-bpm_1 |
docker_forms-flow-bpm_1 exited with code 1
forms-flow-webapi_1 | WARNING: SECRET_KEY being set as a one-shot
forms-flow-webapi_1 | Configure logging, from conf:/usr/local/lib/python3.8/site-packages/api/logging.conf
forms-flow-webapi_1 | Traceback (most recent call last):
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/urllib/request.py", line 1354, in do_open
forms-flow-webapi_1 | h.request(req.get_method(), req.selector, req.data, headers,
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/http/client.py", line 1252, in request
forms-flow-webapi_1 | self._send_request(method, url, body, headers, encode_chunked)
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/http/client.py", line 1298, in _send_request
forms-flow-webapi_1 | self.endheaders(body, encode_chunked=encode_chunked)
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/http/client.py", line 1247, in endheaders
forms-flow-webapi_1 | self._send_output(message_body, encode_chunked=encode_chunked)
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/http/client.py", line 1007, in _send_output
forms-flow-webapi_1 | self.send(msg)
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/http/client.py", line 947, in send
forms-flow-webapi_1 | self.connect()
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/http/client.py", line 918, in connect
forms-flow-webapi_1 | self.sock = self._create_connection(
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/socket.py", line 808, in create_connection
forms-flow-webapi_1 | raise err
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/socket.py", line 796, in create_connection
forms-flow-webapi_1 | sock.connect(sa)
forms-flow-webapi_1 | ConnectionRefusedError: [Errno 111] Connection refused
forms-flow-webapi_1 |
forms-flow-webapi_1 | During handling of the above exception, another
exception occurred:
forms-flow-webapi_1 |
forms-flow-webapi_1 | Traceback (most recent call last):
forms-flow-webapi_1 | File "manage.py", line 14, in
forms-flow-webapi_1 | APP = create_app()
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/site-packages/api/init.py", line 30, in create_app
forms-flow-webapi_1 | setup_jwt_manager(app, jwt)
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/site-packages/api/init.py", line 49, in setup_jwt_manager
forms-flow-webapi_1 | jwt_manager.init_app(app)
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/site-packages/flask_jwt_oidc/jwt_manager.py", line 80, in init_app
forms-flow-webapi_1 | jurl = urlopen(url=self.well_known_config)
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/urllib/request.py", line 222, in urlopen
forms-flow-webapi_1 | return opener.open(url, data, timeout)
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/urllib/request.py", line 525, in open
forms-flow-webapi_1 | response = self._open(req, data)
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/urllib/request.py", line 542, in _open
forms-flow-webapi_1 | result = self._call_chain(self.handle_open,
protocol, protocol +
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/urllib/request.py", line 502, in _call_chain
forms-flow-webapi_1 | result = func(*args)
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/urllib/request.py", line 1383, in http_open
forms-flow-webapi_1 | return self.do_open(http.client.HTTPConnection, req)
forms-flow-webapi_1 | File "/usr/local/lib/python3.8/urllib/request.py", line 1357, in do_open
forms-flow-webapi_1 | raise URLError(err)
forms-flow-webapi_1 | urllib.error.URLError: <urlopen error [Errno 111] Connection refused>

also here is the env file.. (and yes I got the keycloak_bpm_client secret from the new keycloak server

##To define project level configuration possible values development,test,production
NODE_ENV=development

##Set CORS Origin
APP_SECURITY_ORIGIN=*

Environment Variables for Keycloak

KEYCLOAK_URL=http://127.0.0.1:8080
KEYCLOAK_URL_REALM=formsflow-ai
KEYCLOAK_BPM_CLIENTID=forms-flow-bpm
KEYCLOAK_BPM_CLIENTSECRET=6fff85f4-30d3-4dd7-b0bc-1b397345ce30
KEYCLOAK_WEB_CLIENTID=forms-flow-web
KEYCLOAK_TOKEN_URL=http://127.0.0.1:8080/auth/realms/forms-flow-ai/protocol/openid-connect/token
KEYCLOAK_JWT_OIDC_CONFIG=http://127.0.0.1:8080/auth/realms/forms-flow-ai/.well-known/openid-configuration
KEYCLOAK_JWT_OIDC_JWKS_URI=http://127.0.0.1:8080/auth/realms/forms-flow-ai/protocol/openid-connect/certs
KEYCLOAK_JWT_OIDC_ISSUER=http://127.0.0.1:8080/auth/realms/forms-flow-ai

#Orbeon integration with camunda
CAMUNDA_FORMBUILDER_PIPELINE_USERNAME={Basic Authentication Username}
CAMUNDA_FORMBUILDER_PIPELINE_PASSWORD={Basic Authentication Password}
CAMUNDA_FORMBUILDER_PIPELINE_BPM_URL={Camunda URL with elevated privilege}

#Session Management settings
CAMUNDA_SESSION_STORE_TYPE={Session store type}
CAMUNDA_SESSION_STORE_TIMEOUT={Session store timeout}

#Audit Settings
CAMUNDA_BPM_HISTORY_LEVEL={History flag}
CAMUNDA_AUTHORIZATION_FLAG=true
CAMUNDA_AUTHORIZATION_REVOKE_CHECK_FLAG=auto

#Primary Datasource connection and settings
#Variable CAMUNDA_JDBC_DB is not required for managed postgres instance
CAMUNDA_JDBC_DB={Database name}
CAMUNDA_JDBC_URL={Database URL}
CAMUNDA_JDBC_USER={Database username}
CAMUNDA_JDBC_PASSWORD={Database password}
CAMUNDA_JDBC_DRIVER=org.postgresql.Driver
CAMUNDA_HIKARI_CONN_TIMEOUT={Hikari connection timeout}
CAMUNDA_HIKARI_IDLE_TIMEOUT={Hikari idle connection timeout}
CAMUNDA_HIKARI_MAX_POOLSIZE={Hikari max pool size}
CAMUNDA_HIKARI_VALID_TIMEOUT={Hikari connection validation timeout}

#Session Management Datasource connection and settings
#CAMUNDA_SESSION_JDBC_URL={Database URL}
#CAMUNDA_SESSION_JDBC_USER={Database username}
#CAMUNDA_SESSION_JDBC_PASSWORD={Database password}
#CAMUNDA_SESSION_JDBC_DRIVER=org.postgresql.Driver
#CAMUNDA_SESSION_HIKARI_CONN_TIMEOUT={Hikari connection timeout}
#CAMUNDA_SESSION_HIKARI_IDLE_TIMEOUT={Hikari idle connection timeout}
#CAMUNDA_SESSION_HIKARI_MAX_POOLSIZE={Hikari max pool size}
#CAMUNDA_SESSION_HIKARI_VALID_TIMEOUT={Hikari connection validation timeout}

#Analytics Management Datasource connection and settings
CAMUNDA_ANALYTICS_JDBC_URL={Database URL}
CAMUNDA_ANALYTICS_JDBC_USER={Database username}
CAMUNDA_ANALYTICS_JDBC_PASSWORD={Database password}
CAMUNDA_ANALYTICS_JDBC_DRIVER=org.postgresql.Driver
CAMUNDA_ANALYTICS_HIKARI_CONN_TIMEOUT={Hikari connection timeout}
CAMUNDA_ANALYTICS_HIKARI_IDLE_TIMEOUT={Hikari idle connection timeout}
CAMUNDA_ANALYTICS_HIKARI_MAX_POOLSIZE={Hikari max pool size}
CAMUNDA_ANALYTICS_HIKARI_VALID_TIMEOUT={Hikari connection validation timeout}

#Job pool settings
CAMUNDA_JOB_CORE_POOL_SIZE={Core pool size}
CAMUNDA_JOB_MAX_POOL_SIZE={Max pool size}
CAMUNDA_JOB_QUEUE_SIZE={Queue Size}
CAMUNDA_JOB_LOCK_TIME_MILLIS={Lock time}
CAMUNDA_JOB_MAXJOBS_PER_ACQUISITION={Max jobs per acquisition}
CAMUNDA_JOB_WAIT_TIME_MILLIS={Job Wait time}
CAMUNDA_JOB_MAX_WAIT={Job Max Wait}
CAMUNDA_METRICS_FLAG=false

#Log Settings
CAMUNDA_APP_ROOT_LOG_FLAG=debug

##Environment variables for adaptive tier (Python Webapi) Datastore
WEB_API_DATABASE_URL=postgresql://postgres:changeme@forms-flow-webapi-db:5432/webapi
WEB_API_POSTGRES_USER=postgres
WEB_API_POSTGRES_PASSWORD=changeme
WEB_API_POSTGRES_DB=webapi

##Mapping of application roles from keycloak
CLIENT_ROLE=formsflow-client
DESIGNER_ROLE=formsflow-designer
REVIEWER_ROLE=formsflow-reviewer

##Mapping of application roles from FORMIO server
CLIENT_ROLE_ID=60ae42d220e6d93a1bf8dea6
DESIGNER_ROLE_ID=60ae428120e6d9530ff8de94
REVIEWER_ROLE_ID=60ae42d220e6d92826f8dea5
ANONYMOUS_ID=60ae428120e6d9bb7ff8de96
USER_RESOURCE_ID=60ae428120e6d9c3c5f8de97

#URL of forms-flow-forms
FORMIO_DEFAULT_PROJECT_URL=http://localhost:3001

##Environment Variables for FormIO Datastore
FORMIO_MONGO_USERNAME=admin
FORMIO_MONGO_PASSWORD=changeme
FORMIO_MONGO_DATABASE=formio

##Environment Variables for FormIO Server root-admin credential
FORMIO_ROOT_EMAIL=[email protected]
FORMIO_ROOT_PASSWORD=CHANGEME

#Insight Api End point
INSIGHT_API_BASE=http://localhost:7000
INSIGHT_API_KEY={API Key from Redash}

#web Api End point
WEB_API_BASE_URL=http://localhost:5000
FORMSFLOW_API_URL=http://localhost:5000

CAMUNDA_API_URI=http://localhost:8000/camunda

Environment variables for mongodb database

WEBAPI_ANALYTICS_USERNAME=mongo
WEBAPI_ANALYTICS_PASSWORD=changeme
WEBAPI_ANALYTICS_DATABASE=analytics
MONGODB_URI=mongodb://mongo:changeme@forms-flow-webapi-analytics-db:27019/analytics?authSource=admin&authMechanism=SCRAM-SHA-256

#Websocket Settings for task events
WEBSOCKET_SECURITY_ORIGIN={Allowed Origin}
#Allowed Options: TASK_EVENT, TASK_EVENT_DETAILS. To send multiple seperate by comma.
WEBSOCKET_MESSAGE_TYPE=TASK_EVENT
WEBSOCKET_ENCRYPT_KEY={Any secret phrase}

Analytics not showing up in the web app

After creating a dashboard in Redash (port 7000) and publishing it, are there other changes to be made to make the dashboard available in the web app (port 3000) when logged in as a designer? Right now the dashboards are listed but on click, it does not load on to the UI.
image

Can't view task

  • When I create a form, I cannot see the task list, and the background error message is as follows
  • [ ]
  • SEVERE: Servlet.service() for servlet [dispatcherServlet] in context with path [/camunda] threw exception [Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [select aht.id_ taskid, aht.name_ taskname, act.group_id_ groupname, aht.proc_inst_id_ pid, aht.proc_def_key_ processdefkey, aht.task_def_key_ taskDefinitionKey, aht.assignee_ assignee, ahv.name_ variablename, ahv.text_ variablevalue, aht.delete_reason_ status from act_hi_varinst ahv, act_hi_taskinst aht FULL OUTER JOIN act_ru_identitylink act ON aht.id_ = act.task_id_ where aht.proc_inst_id_ = ahv.proc_inst_id_ and (act.group_id_ is null or act.group_id_ IN ())]; nested exception is org.postgresql.util.PSQLException: ERROR: syntax error at or near ")"
  • Position: 468] with root cause
  • org.postgresql.util.PSQLException: ERROR: syntax error at or near ")"
  • Position: 468
  • [ ]
  • I started the task from camunda again, the error message is as follows
  • [ ]
  • 2021-05-17 02:37:43.393 WARN 1 --- [nio-8080-exec-2] org.camunda.bpm.engine.rest.exception : ENGINE-REST-HTTP500 org.springframework.web.client.HttpClientErrorException$NotFound: 404 Not Found: [
  • <title>Error</title>
  • Cannot PUT /form/
  • ]
  • [ ]
  • [ ]
  • Can anyone help me look at this problem
  • Thank u
  • guards
  • [ ]

how to redirect one form to another form based on the result of workflow process?

currently, the implementation will be like the following: form-1 -> submit form-1 -> execute process-A (unable to notify the frontend on the process result)

however, we would like to build multiple form wizard with workflow engine like this: form-1 -> submit form-1 -> execute process-A -> based on the conditional result of process-A, if true then display form-2, else if false then display form-3

kindly advise on how to perform this logic.

some thoughts: in the form-1 submit button -> select submit = "custom" -> define custom logic -> use javascript to call camunda rest api polling to check the response of process instance, process instance will be set with "action" on next step, such as "step-2" or "step-3" based on the condition of the process completion. then redirect user using javacript.

another thought with more effort: building Single Page Application (with Wizard) then create websocket to listen call back from workflow upon process completion?

-please advise

When using FormConnectorListener, why values from previous forms submited not appear in the second form?

Hello All,

I was try to use the formconnectorListener. Client submit forms with fields name , age and address. Now when Reviewer claims it , there is a second forms that display for the reviewer(internal form) which has fields name , age , address and COMMENTS.

So when the review claim , the name , age and address should automatically appear in the second forms and reviewer should only add his comments.

IS this the way that should work? Please suggest.

Thank you.

X-XSRF-TOKEN loss when visits Camunda

The entire project has been deployed in my local machine,everything runs successfully when visits camunda whith 'http://localhost:8000/camunda', but something wrong when i change 'localhost' to local ip ('http://192.168.19.12:8000/camunda').I got a 403 code and lead to the login page when visited 'http://192.168.19.12:8000/camunda/api/engine/engine/default/group?maxResults=25&firstResult=0',it seens missing the request header :'X-XSRF-TOKEN'.
image

Here is information of my request:
curl 'http://192.168.19.12:8000/camunda/api/engine/engine/default/group?maxResults=25&firstResult=0'
-H 'Connection: keep-alive'
-H 'Accept: application/hal+json, application/json; q=0.5'
-H 'Content-Type: application/json'
-H 'Origin: http://192.168.19.12:8000'
-H 'Referer: http://192.168.19.12:8000/camunda/app/welcome/default/'
-H 'Cookie: JSESSIONID=1FB251B3C8EA03FEC0676F87C9FBD660'
--data-raw '{"firstResult":0,"maxResults":25,"member":"formsflow-approver"}'
--compressed
--insecure

How can i fix this problem?

Workflows not populated

Bug Report

Please provide information about your setup

  • formsflow.ai Version: Docker Full Deployment
  • Browser: Chrome
  • Browser version: 88.0.4324.150 and Edge 88.0.705.63

Steps to Reproduce

  1. Install Key Cloak with SSL
  2. Use full docker deployment forms-flow-ai
  3. Make best guess at mongodb url - mongodb://admin:[email protected]:27018/analytics?authSource=admin&authMechanism=SCRAM-SHA-256
  4. login into forms flow and create new form, save, next

Observed Behaviour

image

No work flows are displayed. Workflows are in Camunda/bpm
If possible provide a screenshot to demonstrate the bug.

Expected Behaviour

Expect workflows that are in Camunda/BPM to be listed in drop down.

No Tasks Found

Bug Report

Please provide information about your setup

  • formsflow.ai Version: Full Docker Deployment
  • Browser: Edge or Chrome
  • Browser version: Latest

Steps to Reproduce

  1. Full deployment Install
  2. Go through example for application
  3. Submit

Observed Behaviour

No Tasks found

Expected Behaviour

Expect tasks to be found according to example

No task problem

1 When I compile the form, click next, then select One Step Approval, click save, the error message of the docker_forms-flow-forms container is as follows

formio:log Token Using normal token +72ms
formio:log User external +0ms
formio:cache:loadForm string: 60814598157e62122774c7b4 +52ms
formio:cache:loadForm Caching result +1ms
formio:cache:loadSubForms Loading subforms for 60814598157e62122774c7b4 +60ms
formio:util:getUrlParams Url {
formio:util:getUrlParams protocol: null,
formio:util:getUrlParams slashes: null,
formio:util:getUrlParams auth: null,
formio:util:getUrlParams host: null,
formio:util:getUrlParams port: null,
formio:util:getUrlParams hostname: null,
formio:util:getUrlParams hash: null,
formio:util:getUrlParams search: null,
formio:util:getUrlParams query: null,
formio:util:getUrlParams pathname: '/current',
formio:util:getUrlParams path: '/current',
formio:util:getUrlParams href: '/current'
formio:util:getUrlParams } +9ms
formio:util:getUrlParams { current: '' } +0ms
formio:db Connection exists +9ms
formio:sanityCheck Checking GET +9ms
formio:sanityCheck No Response and Less than 10 seconds +0ms
formio:util:idToBson Unknown _id given: external, typeof: string +8ms
formio:cache:loadSubmission Searching for form: 60814598157e62122774c7b4, and submission: external +8ms
formio:cache:loadSubmission {
formio:cache:loadSubmission _id: 'external',
formio:cache:loadSubmission form: 60814598157e62122774c7b4,
formio:cache:loadSubmission deleted: { '$eq': null }
formio:cache:loadSubmission } +0ms
formio:cache:loadSubmission CastError: Cast to ObjectId failed for value "external" at path "_id" for model "submission"
formio:cache:loadSubmission at model.Query.exec (/.npm-packages/node_modules/mongoose/lib/query.js:4358:21)
formio:cache:loadSubmission at Object.loadSubmission (/forms-flow-forms/app/src/cache/cache.js:250:81)
formio:cache:loadSubmission at /forms-flow-forms/app/src/middleware/tokenHandler.js:195:15
formio:cache:loadSubmission at Object.alter (/forms-flow-forms/app/src/util/hook.js:39:18)
formio:cache:loadSubmission at /forms-flow-forms/app/src/middleware/tokenHandler.js:145:12
formio:cache:loadSubmission at /.npm-packages/node_modules/jsonwebtoken/verify.js:223:12
formio:cache:loadSubmission at getSecret (/.npm-packages/node_modules/jsonwebtoken/verify.js:90:14)
formio:cache:loadSubmission at Object.module.exports [as verify] (/.npm-packages/node_modules/jsonwebtoken/verify.js:94:10)
formio:cache:loadSubmission at /forms-flow-forms/app/src/middleware/tokenHandler.js:124:9
formio:cache:loadSubmission at Layer.handle [as handle_request] (/.npm-packages/node_modules/express/lib/router/layer.js:95:5)
formio:cache:loadSubmission at trim_prefix (/.npm-packages/node_modules/express/lib/router/index.js:317:13)
formio:cache:loadSubmission at /.npm-packages/node_modules/express/lib/router/index.js:284:7
formio:cache:loadSubmission at Function.process_params (/.npm-packages/node_modules/express/lib/router/index.js:335:12)
formio:cache:loadSubmission at next (/.npm-packages/node_modules/express/lib/router/index.js:275:10)
formio:cache:loadSubmission at cors (/.npm-packages/node_modules/cors/lib/index.js:188:7)
formio:cache:loadSubmission at /.npm-packages/node_modules/cors/lib/index.js:224:17 +1ms
formio:middleware:tokenHandler {
formio:middleware:tokenHandler _id: 'external',
formio:middleware:tokenHandler roles: [
formio:middleware:tokenHandler '60a221e4ed7a63ec0be5d173',
formio:middleware:tokenHandler '60a221e4ed7a6355cbe5d172',
formio:middleware:tokenHandler '60814598157e62584d74c7b1'
formio:middleware:tokenHandler ]
formio:middleware:tokenHandler } +9ms
formio:log Token Using normal token +9ms
formio:log User external +0ms
formio:cache:loadForm string: 60814598157e62122774c7b4 +8ms
formio:cache:loadForm Caching result +1ms
formio:cache:loadSubForms Loading subforms for 60814598157e62122774c7b4 +9ms

2 Log in to the service of port 3000, click task to return null

3 Log in to the service on port 8000, click Start process, and get the error message as follows
The process could not be started. :
404 Not Found: [ <title>Error</title>

Cannot PUT /form/
]

Thank you very much for the open source framework you provide, I enjoy this framework, please help me see my questions, thanks

Submission can not be done from client - Unauthorized

Hi,
I configured the roles also correctly by hitting the roles api and pasted in .env file. Is there any issues with request token?
Can you please help me resolving this error.
And one more thing where will i get this value "FORMIO_JWT_SECRET". Currently i copied the token from browser from token api, may be it will expire.
image

WebAPI and BPM containers don't start properly

Hi, I followed the docker installation instructions and so far have not been able to get the forms-flow-webapi and forms-flow-bpm containers to run. All others are running as expected:

docker1

Upon examination, these are the error messages displayed:

forms-flow-webapi container:

docker2
forms-flow-webapi.txt

forms-flow-bpm container:

docker3
forms-flow-bpm.txt

Both containers restart endlessly, always displaying the same output above. I have followed the instructions provided here https://github.com/AOT-Technologies/forms-flow-ai/tree/master/deployment/docker step by step even on different physical machines, always the same.

I have edited the .env files located in ./forms-flow-idm/keycloak/.env, ./forms-flow-analytics/.env and ./deployment/docker/.env. I believe I might be missing something but I can't figure out what it is by just looking at the output. Any help is appreciated.

Next button does not work on initial form save

Bug Report

Please provide information about your setup

  • formsflow.ai Version: Docker Full Install
  • Browser: Edge/Chrome
  • Browser version: Latest

Steps to Reproduce

  1. Perform Full install of Docker
  2. Open Formio and Create form
  3. Save and Preview
  4. Press Next...

Observed Behaviour

You don't go to the next screen, click edit form and it will take you back, Press save , now next works.
If possible provide a screenshot to demonstrate the bug.

Expected Behaviour

Next should take you to the screen to Associate workflow

Error in console

Bug Report: Getting error in console

Issue: Could not connect to API server while submitting form

  • formsflow.ai Version: forms flow v4
  • Browser: Google chrome
  • Browser version: Version 91.0.4472.101 (Official Build) (64-bit)

Steps to Reproduce

1.http://localhost:3000/form
2.login as client
3.submit a form

Observed Behaviour

Screenshots:
1
2

Response: {"status":400,"message":"Cast to ObjectId failed for value "[email protected]" (type string) at path "_id" for model "submission""}

how to access form without authentication

right now, if accessing port 3000, authentication is always required. but in the case of public form access, it is common to have the form available without login first (a.k.a guest user or anonymous user) . may I know how to setup form access without authentication required, or else, can we create a guest user in keycloak?

pid value is blank

When triggering the escalation listner, i have sucessfully recieved the email, but in the email the pid value is not rendering.

Dear Team,

You have exceeded the deadline for the task.

Application Number : 7

Please click the following link to access your new task.

To access the task through formsflow.ai please follow this link: http://localhost:3000/task/@pid

Regards,
Can you please help on this issue.

Thank you.

The forms-flow-analytics component crashes

Bug Report

Please provide information about your setup

  • formsflow.ai Version: v4.0.2, git commit ID: 1735fde
  • Browser: (irrelevant)
  • Browser version: (irrelevant)

Steps to Reproduce

  1. Set up a local Keycloak with the default config
  2. Set up forms-flow-forms with the following setup:

sed "s/{your-ip-address}/localhost/g" sample.env > .env

  1. Set up forms-flow-analytics with the following setup:

sed "s/{your-ip-address}/localhost/g" sample.env > .env
echo -e "\n# Tuning parameters\nSQLALCHEMY_POOL_SIZE=32\nSQLALCHEMY_MAX_OVERFLOW=16" >> .env

Observed Behaviour

The command to set up the forms-flow-analytics component's database (docker-compose -f docker-compose-linux.yml run --rm server create_db) doesn't run successfully, and throws this error:

Successfully built b515be528431
Successfully tagged forms-flow-analytics_server:latest
WARNING: Image for service server was built because it did not already exist. To rebuild this image you must use `docker-compose build` or `docker-compose up --build`.
Creating forms-flow-analytics_postgres_1 ... done
Creating forms-flow-analytics_redis_1    ... done
Creating forms-flow-analytics_server_run ... done
ERROR: 139

The adhoc_worker process suffers from the same issue, and logs these messages:

adhoc_worker_1  | 2021-09-27 22:19:56,189 INFO success: worker_healthcheck entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
adhoc_worker_1  | 2021-09-27 22:20:08,232 INFO exited: worker_healthcheck (terminated by SIGSEGV (core dumped); not expected)
adhoc_worker_1  | 2021-09-27 22:20:08,233 INFO spawned: 'worker_healthcheck' with pid 50
adhoc_worker_1  | 2021-09-27 22:20:08,313 INFO exited: worker-2 (terminated by SIGSEGV (core dumped); not expected)
adhoc_worker_1  | 2021-09-27 22:20:08,421 INFO exited: worker-3 (terminated by SIGSEGV (core dumped); not expected)
adhoc_worker_1  | 2021-09-27 22:20:08,422 INFO exited: worker-0 (terminated by SIGSEGV (core dumped); not expected)
adhoc_worker_1  | 2021-09-27 22:20:09,433 INFO success: worker_healthcheck entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
adhoc_worker_1  | 2021-09-27 22:20:09,435 INFO spawned: 'worker-0' with pid 56
adhoc_worker_1  | 2021-09-27 22:20:09,437 INFO spawned: 'worker-2' with pid 57
adhoc_worker_1  | 2021-09-27 22:20:09,439 INFO spawned: 'worker-3' with pid 58
adhoc_worker_1  | 2021-09-27 22:20:09,440 INFO exited: worker-1 (terminated by SIGSEGV (core dumped); not expected)

Expected Behaviour

These services should run properly.

Incorrect URL getting called for KeyCloak

I have followed the istructions and have installed the complete modules. While trying to run the FormsFlow Web on port 3000, I see that the following call in netwrk tab is failing. can you please guide on this. I see there is some duplication in the URL, but this is captured as is from the Network Tab

http://localhost:3000/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/undefined/auth/realms/forms-flow-ai/protocol/openid-connect/auth?client_id=forms-flow-web&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fsilent-check-sso.html&state=dfe26be0-4d2d-42e7-851d-dc7c8931bf2b&response_mode=fragment&response_type=code&scope=openid&nonce=1718a836-c8a8-4e1f-87c1-793ce7e64a6b&prompt=none&code_challenge=pB7xh06Qyq1ZwIvslCrW3AON11Su_5B4sdFantXY0RM&code_challenge_method=S256

Form access get reset in Form.io dashboard

We have set up the public route and anonymous form submission. As AOT team suggested, we have setup access permission for the anonymous user in the form.io dashboard(3001). The problem we are facing is that, once we set the roles for "Create Own Submission", and after making a certain number of submit requests from the web, the roles get reset to default config and we will have to do the setup again. This happened quite a few times. Can you please suggest what can be done or if we can debug the issue from logs?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.