{"id":36622689,"url":"https://github.com/actframework/act-beetlsql","last_synced_at":"2026-01-12T09:27:06.246Z","repository":{"id":57744867,"uuid":"83617900","full_name":"actframework/act-beetlsql","owner":"actframework","description":"beetlsql plugin for ActFramework","archived":false,"fork":false,"pushed_at":"2020-11-29T04:09:32.000Z","size":84,"stargazers_count":9,"open_issues_count":15,"forks_count":6,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-03-21T13:10:52.349Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/actframework.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-03-02T01:02:18.000Z","updated_at":"2024-03-21T13:10:52.350Z","dependencies_parsed_at":"2022-08-30T12:10:57.097Z","dependency_job_id":null,"html_url":"https://github.com/actframework/act-beetlsql","commit_stats":null,"previous_names":[],"tags_count":32,"template":false,"template_full_name":null,"purl":"pkg:github/actframework/act-beetlsql","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actframework%2Fact-beetlsql","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actframework%2Fact-beetlsql/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actframework%2Fact-beetlsql/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actframework%2Fact-beetlsql/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/actframework","download_url":"https://codeload.github.com/actframework/act-beetlsql/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actframework%2Fact-beetlsql/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28337715,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T06:09:07.588Z","status":"ssl_error","status_checked_at":"2026-01-12T06:05:18.301Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-12T09:27:05.604Z","updated_at":"2026-01-12T09:27:06.241Z","avatar_url":"https://github.com/actframework.png","language":"Java","readme":"# BeetlSQL Plugin for ActFramework\n\nAllow ActFramework application to use [BeetlSQL](http://ibeetl.com/)\n\n**Special note on v1.5.0**\n\nBecause Act DB updated the transaction handling framework with act-sql-common-1.4.0, it will not send events about TX entering and exit, instead it just set the global state `TxContext`, which should be pulled by each database access layer implementation when tx is really needed. For example\n\n* act-jpa-common - The TxContext will get visited when\n\n    1. `JPADao`'s save/delete/update methods get called\n    2. `EntityManager` instance is about to get injected\n\n* act-ebean - The TxContext will get visited when\n    1. `EbeanDao`'s save/delete/upate methods get called\n\nUnfortunately beetlsql integration doesn't provide the support for the above mechanism. Thus in order to apply transactional scope to your app with beetlsql as the database access layer, you must use `@With(BeetlSqlTransactional.class)` as demonstrated below:\n\n```java\n@SuppressWarnings(\"unused\")\n@With(BeetlSqlTransactional.class)\npublic class Todo {\n\n    @Inject\n    private TodoItem.Mapper mapper;\n\n    @GetAction\n    public void home() {}\n\n    @GetAction(\"/list\")\n    public Iterable\u003cTodoItem\u003e list(String q) {\n    \t\t// mapper.all();\n        return mapper.all();\n    }\n\n    @PostAction(\"/list\")\n    public void post(String desc) {\n        TodoItem item = new TodoItem();\n        item.setDesc(desc);\n        mapper.insert(item);\n    }\n\n}\n```\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factframework%2Fact-beetlsql","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Factframework%2Fact-beetlsql","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factframework%2Fact-beetlsql/lists"}