{"id":27945209,"url":"https://github.com/jakartaee/mvc","last_synced_at":"2025-09-12T21:46:00.671Z","repository":{"id":37883336,"uuid":"267069622","full_name":"jakartaee/mvc","owner":"jakartaee","description":"Jakarta MVC Specification","archived":false,"fork":false,"pushed_at":"2025-06-03T17:02:35.000Z","size":272,"stargazers_count":27,"open_issues_count":17,"forks_count":8,"subscribers_count":14,"default_branch":"main","last_synced_at":"2025-08-18T11:56:42.568Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://projects.eclipse.org/projects/ee4j.mvc","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"epl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jakartaee.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-05-26T14:43:32.000Z","updated_at":"2025-06-05T15:31:27.000Z","dependencies_parsed_at":"2023-01-19T13:00:10.525Z","dependency_job_id":"ba38a70a-ded1-4ab2-ae76-202a40be6ced","html_url":"https://github.com/jakartaee/mvc","commit_stats":null,"previous_names":["eclipse-ee4j/mvc-api"],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/jakartaee/mvc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jakartaee%2Fmvc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jakartaee%2Fmvc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jakartaee%2Fmvc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jakartaee%2Fmvc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jakartaee","download_url":"https://codeload.github.com/jakartaee/mvc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jakartaee%2Fmvc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274881660,"owners_count":25367316,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-12T02:00:09.324Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":"2025-05-07T12:56:25.344Z","updated_at":"2025-09-12T21:46:00.660Z","avatar_url":"https://github.com/jakartaee.png","language":"Java","funding_links":[],"categories":["开发框架"],"sub_categories":["Web框架"],"readme":"[![Java CI with Maven](https://github.com/jakartaee/mvc/actions/workflows/main.yml/badge.svg)](https://github.com/jakartaee/mvc/actions/workflows/main.yml)\n\n# Jakarta MVC Specification and API\n\nThis project contains the specification document and Java API sources. The project\nis organized into two modules: _api_ and _spec_.\nThe _api_ module contains the Java API sources, which may be used to generate the\nAPI JAR and JavaDoc.\nThe _spec_ module contains the specification document sources, which may be used\nto generate the specification document.\n\n## Generating the API and JavaDoc\n\nJust enter `mvn clean install` at the command line. Maven will generate the following artifacts.\n\nAPI Jar::\n* The jar containing the api interfaces and classes.\n* In the directory: `/api/target`\n\nAPI JavaDoc::\n* The JavaDoc for the api interfaces and classes.\n* In the directory: `api/target/apidocs`\n\n## Generating the Specification\n\nrun `mvn clean install` in the `spec` directory\n\nThe PDF and HTML will be generated in `spec/target/generated-docs/`\n\n## Tagging phrases for the TCK\n\nThe [Jakarta MVC TCK](https://github.com/jakartaee/mvc-tck) is a suite of unit\ntests for validating the compliance of MVC implementations with the specification.\n\nThe tests of the TCK are based on assertions representing sentences and phrases in this\nspecification. Labels on specific text elements of the specification are used to mark those which\nshould lead to an assertion in the TCK. The following values are allowed:\n\n* `tck-testable`: The tagged element must be represented by a testable assertion in the TCK\n* `tck-not-testable`: The tagged element must be represented by a non-testable assertion in the\nTCK (e.g. assertions regarding thread safety)\n* `tck-ignore`: The tagged element must be excluded when creating a TCK assertion for an outer\nelement. Can be used to exlude explanatory phrases contained in an element marked as `tck-testable`.\n* `tck-needs-update`: The tagged element must be marked with a note in the TCK audit file saying\nthat the tests for this assertion need to be updated, e.g. due to a spec update. Can be used\ntogether with `tck-testable` and `tck-not-testable`: `[tck-testable tck-needs-update]#Some sentence...#`.\n* `tck-id-SOME_ID`: This tag defines an ID that has to be used to reference this particular assertion\nin the TCK. SOME_ID can be any text, number or special character`- anything up to the next space \" \" or\nclosing bracket ]` will be taken as the ID. Can be used together with `tck-testable`:\n`[tck-testable tck-id-http://some.issue.tracker/url]#Some sentence...#`. `tck-testable` without a\ndefined id will get a letter assigned as their ID, in the order of apperance within their section\n(a, b, c, ...)\n\n## Audit XML to calculate spec coverage in tests\n\n`mvn clean install` (or just `mvn generate-resources`) in the `spec` directory will create a `tck-audit.xml` file under\n`target/generated-docs`. This file contains the `[tck-testable]` assertions found in the spec (asciidoc),\nand is used in the TCK project to analyse the spec coverage in tests.\n\nThe process is copied and adapted from the beanvalidation spec project\n(https://github.com/jakartaee/validation).\n\n## TCK Challenge and resolution process for Jakarta MVC\n\nTest challenges for Jakarta MVC may be resolved through Lazy Consensus. Please see the TCK Users Guide for Jakarta MVC for more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjakartaee%2Fmvc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjakartaee%2Fmvc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjakartaee%2Fmvc/lists"}