Language 0 does not exist on site … after replacing it | TYPO3 - typo3

I have a new TYPO3 System.
In the Site Configuration I have deleted the default language (English) and created a new one (German).
When I want to display my website in the Page Module there is the following error:
Language 0 does not exist on site autogenerated-1-…
Where can I configure the language that is being selected or is it possible to change the language id?

You need to make sure that you have a site configuration with a language that uses uid=0. I assume you're using TYPO3 v12?
If yes, I'd suggest the following:
go to site configuration
delete all languages
In the list "Available Languages for this Site" there should be then at least one entry which is called "English [0]". Select that one to create a new language
Edit that entry and change all values to German.

Your Site configuration is a YAML file stored in your docroot config/sites/<identifier>/config.yaml (Composer based installation) or typo3conf/sites/<identifier>/config.yaml (legacy installation).
You can write configuration directly as text
languages:
-
title: Deutsch
enabled: true
base: /
typo3Language: de
locale: de_DE.UTF-8
iso-639-1: de
websiteTitle: 'My websitetitle'
navigationTitle: 'deutsch'
hreflang: de-DE
direction: ltr
flag: de
languageId: 0
and adjust websitetitle. Keep indention.

Related

How to use Swagger in Quarkus with Ingress-Ngnix Kubernetes

Good Afternoon. I'm trying to use Swagger in Quarkus and locally it works great for me, however when I upload it to the production environment I'm using Ingress-Nginx as a reverse proxy in a Kubernetes cluster and I'm running into a problem, I don't allows you to view the Swagger interface:
Postman Local:
Swaager Local:
Postman Kubernetes Environment with Ingress-Nginx:
Swaager-Ui in Kubernetes Environment with Ingress-Nginx:
My application.properties:
quarkus.datasource.db-kind=oracle
quarkus.datasource.jdbc.driver=oracle.jdbc.driver.OracleDriver
#quarkus.datasource.jdbc.driver=io.opentracing.contrib.jdbc.TracingDriver
quarkus.datasource.jdbc.url=jdbc:oracle:thin:#xxxxxxxxxxxx:1522/IVR
quarkus.datasource.username=${USERNAME_CONNECTION_BD:xxxxxxxx}
quarkus.datasource.password=${PASSWORD_CONNECTION_BD:xxxxxxxx.}
quarkus.http.port=${PORT:8082}
quarkus.http.ssl-port=${PORT-SSl:8083}
# Send output to a trace.log file under the /tmp directory
quarkus.log.file.path=/tmp/trace.log
quarkus.log.console.format=%d{HH:mm:ss} %-5p [%c{2.}] (%t) %s%e%n
# Configure a named handler that logs to console
quarkus.log.handler.console."STRUCTURED_LOGGING".format=%e%n
# Configure a named handler that logs to file
quarkus.log.handler.file."STRUCTURED_LOGGING_FILE".enable=true
quarkus.log.handler.file."STRUCTURED_LOGGING_FILE".format=%e%n
# Configure the category and link the two named handlers to it
quarkus.log.category."io.quarkus.category".level=INFO
quarkus.log.category."io.quarkus.category".handlers=STRUCTURED_LOGGING,STRUCTURED_LOGGING_FILE
quarkus.ssl.native=true
quarkus.http.ssl.certificate.key-store-file=${UBICATION_CERTIFICATE_SSL:srvdevrma1.jks}
quarkus.http.ssl.certificate.key-store-file-type=${TYPE_CERTIFICATE_SSL:JKS}
quarkus.http.ssl.certificate.key-store-password=${PASSWORD_CERTIFICATE_SSL:xxxxxxx}
quarkus.http.ssl.certificate.key-store-key-alias=${ALIAS_CERTIFICATE_SSL:xxxxxxxxx}
quarkus.native.add-all-charsets=true
quarkus.swagger-ui.path=/api/FindPukCodeBS/swagger-ui
quarkus.smallrye-openapi.path=/api/FindPukCodeBS/swagger
mp.openapi.extensions.smallrye.info.title=FindPukCodeBS
%dev.mp.openapi.extensions.smallrye.info.title=FindPukCodeBS
%test.mp.openapi.extensions.smallrye.info.title=FindPukCodeBS
mp.openapi.extensions.smallrye.info.version=1.0.1
mp.openapi.extensions.smallrye.info.description=Servicio que consulta el codigo puk asociado a una ICCID (SIMCARD)
mp.openapi.extensions.smallrye.info.termsOfService=Your terms here
mp.openapi.extensions.smallrye.info.contact.email=xxxxxxxxxxxxxxxxxxxx.com
mp.openapi.extensions.smallrye.info.contact.name=xxxxxxxxxxxxxxxxxx#telefonica.com
mp.openapi.extensions.smallrye.info.contact.url=http://exampleurl.com/contact
mp.openapi.extensions.smallrye.info.license.name=Apache 2.0
mp.openapi.extensions.smallrye.info.license.url=https://www.apache.org/licenses/LICENSE-2.0.html
What can be done in these cases?
The Swagger-UI is included by default only in dev mode.
To enable it on your application, you must set this parameter:
quarkus.swagger-ui.always-include=true
This parameter is build time, so you can't change it on your deploy. You must set it into your application.properties.
Reference
https://quarkus.io/guides/all-config#quarkus-swagger-ui_quarkus-swagger-ui-swagger-ui

Routing problem after upgrading from LTS 8 to LTS 9 (RealURL -> Core routing)

After migrating our site from version 8 LTS to version 9 LTS, I have some configuration problems with the routing.
With RealURL we use the fixedPostVars, 'noMatch' => 'bypass'.
For example with this URL
http://Mysite/my-page/mysubpage
?tx_extension[action]=show
&tx_extension[controller]=Researchers
&tx_extension[fullName]=FirstNameWithÉ-LastName
&tx_extension[id]=37
&cHash=f077e6ab99d456c1d0431603186c32cf
We would like to have
http://Mysite/my-page/mysubpage/FirstNameWithC-LastNameWithe/37
For now I can get
http://Mysite/my-page/mysubpage/FirstNameWith%2527-LastName/37
?tx_extension%5Baction%5D=show
&tx_extension%5Bcontroller%5D=Researchers
&cHash=067d606ab30ace24e7cf347bdf89b011
I tried several configurations without success.
So how can I do to hide the controller, the action and the cHash.
Also, how to handle accented characters in URL.
This is my configuration for routeEnhancers
ListResearchers:
type: Plugin
limitToPages:
- 2706
- 2707
routePath: '/{name}/{uid}'
namespace: 'tx_extension'
_arguments:
name: 'fullName'
uid: 'id'
fullName has a too huge value space to be there without requirements/aspects. That will produce ?cHash.
In your case (string), you can use the PersistedAliasMapper or write a custom aspect.
uid will need requirements. (If you want to use it. You could get rid of it with PersistedAliasMapper)

Azure DevOps 2019 On-Prem - Error on creating collection : "LeaseLostException on step Create Framework Security Namespaces" [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 1 year ago.
Improve this question
I am facing an error when I try to create a collection on Azure DevOps On premises from the administration console.
It seems to happen when DevOps manages the CreateCollection.Service.Analytics part. I can't find any reference to this problem on Google.
I choose the Inheritance process model in the wizard and when I launch the installation, after a few minutes :
[15:15:32.793] Executing step: Enable analytics on-prem for new collections
[15:15:32.793] Executing step: 'Enable analytics on-prem for new collections' AnalyticsCollection.EnableAnalyticsOnPrem (360 of 387)
[15:16:13.407] [Warning] Impossible d'activer Analytics pour cette nouvelle collection. Vous pouvez y remédier en réactivant Analytics manuellement. Pour plus d'informations, consultez la documentation : https://go.microsoft.com/fwlink/?linkid=2093060.
[15:16:13.533] [Warning] Analytics failed to enable for new collection due to: Le bail de AnalyticsStateService.SetFeatureState, dont le propriétaire est f24b9929-5d00-498c-9b4c-1e6d8c5f8f77, obtenu le 10/03/2020 14:15:33 par le processus abde3e12-0d37-4751-a1fe-23387f8c5268 a expiré le 10/03/2020 14:16:03
***
in english :
Unable to enable Analytics for this new collection. You can fix it by reactivating Analytics manually (so later no ??? )
The lease for AnalyticsStateService.SetFeatureState, owned by f24b9929-5d00-498c-9b4c-1e6d8c5f8f77, obtained on 10/03/2020 14:15:33 by the process abde3e12-0d37-4751-a1fe-23387f8c5268 expired on 10 / 03/2020 14:16:03
***
[15:16:13.540] Step passed (with warnings): Enable analytics on-prem for new collections. Execution time: 40 seconds.
[15:16:13.540] [StepDuration] 40,7454734
[15:16:13.597] [GroupDuration] 67,5660477
[15:16:13.597] [OperationDuration] 67,56617
[15:16:13.597] +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[15:16:13.597] ++ Executing - Operation: CreateCollection.Service.Analytics.Sdk, Group: CreateCollection.Service.Analytics.Sdk
[15:16:13.597] +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[15:16:13.597] Step skipped: Queue Analytics Maintain Staging Schedules Job.
[15:16:13.600] [GroupDuration] 0,0046515
[15:16:13.600] [OperationDuration] 0,0046985
[15:16:13.600] +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[15:16:13.600] ++ Executing - Operation: CreateCollection.Service.Notifications, Group: CreateCollection.Service.Notifications
[15:16:13.600] +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[15:16:13.600] Executing step: Load service tokens
[15:16:13.600] Executing step: 'Load service tokens' FrameworkTokens.ConfigureServiceTokens (362 of 387)
[15:16:13.603] Step passed: Load service tokens. Execution time: 3 milliseconds.
[15:16:13.603] [StepDuration] 0,0002612
[15:16:13.603] +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Executing step: Create Framework Security Namespaces
[15:16:13.603] Executing step: 'Create Framework Security Namespaces' Security.CreateSecurityNamespaces (363 of 387)
[15:16:13.603] There are 1 security namespaces to create/update.
[15:16:13.603] Validating 'EventSubscription' security namespace.
[15:16:13.603] Creating/updating security namespace(s).
[15:16:13.603] [Error] Le bail de AnalyticsStateService.SetFeatureState, dont le propriétaire est f24b9929-5d00-498c-9b4c-1e6d8c5f8f77, obtenu le 10/03/2020 14:15:33 par le processus abde3e12-0d37-4751-a1fe-23387f8c5268 a expiré le 10/03/2020 14:16:03
***
in english :
Same error but with stack trace
The lease for AnalyticsStateService.SetFeatureState, owned by f24b9929-5d00-498c-9b4c-1e6d8c5f8f77, obtained on 10/03/2020 14:15:33 by the process abde3e12-0d37-4751-a1fe-23387f8c5268 expired on 10 / 03/2020 14:16:03
***
[15:16:13.633] Microsoft.TeamFoundation.Framework.Server.LeaseLostException: Le bail de AnalyticsStateService.SetFeatureState, dont le propriétaire est f24b9929-5d00-498c-9b4c-1e6d8c5f8f77, obtenu le 10/03/2020 14:15:33 par le processus abde3e12-0d37-4751-a1fe-23387f8c5268 a expiré le 10/03/2020 14:16:03
[15:16:13.633] à Microsoft.TeamFoundation.Framework.Server.VssRequestContext.CheckCanceled(Boolean throwIfShutdown)
[15:16:13.633] à Microsoft.TeamFoundation.Framework.Server.VssRequestContext.get_ServiceProvider()
[15:16:13.633] à Microsoft.TeamFoundation.Framework.Server.VssRequestContextExtensions.GetService[TService](IVssRequestContext context)
[15:16:13.633] à Microsoft.VisualStudio.Services.Framework.SecurityStepPerformer.CreateOrUpdateSecurityNamespaces(IVssRequestContext requestContext, ServicingContext servicingContext, LocalNamespaceDescriptionStepData[] securityNamespaceDescriptions)
[15:16:13.633] à Microsoft.TeamFoundation.Framework.Server.TeamFoundationStepPerformerBase.PerformHostStep(String servicingOperation, ServicingOperationTarget target, IServicingStep servicingStep, String stepData, ServicingContext servicingContext)
[15:16:13.633] à Microsoft.TeamFoundation.Framework.Server.TeamFoundationStepPerformerBase.PerformStep(String servicingOperation, ServicingOperationTarget target, String stepType, String stepData, ServicingContext servicingContext)
[15:16:13.633] à Microsoft.TeamFoundation.Framework.Server.ServicingStepDriver.PerformServicingStep(ServicingStep step, ServicingContext servicingContext, ServicingStepGroup group, ServicingOperation servicingOperation, Int32 stepNumber, Int32 totalSteps)
[15:16:13.633] Step failed: Create Framework Security Namespaces. Execution time: 30 milliseconds.
It is the first collection that I created from scratch on Azure DevOps, but I already have a migrated collection from tfs 2015 which works very well. I don't want to create my collection on tfs2015 only to migrate it to devops :(
The reports are not configured, I understand that I can configure them later when I really want to use them. I did not install SSRS but if it is necessary I would do it.
The Analytics service feature is installed on my instance of SQL Server. SQL Server is installed on the same server.
The database for the collection was created but the state in the console is Offline and I cannot re-execute the creation work I have an error, I have to delete it with command line.
Edit:
I tested a creation with the xml process model and it's working. In the settings page I see Analytics is activated.
Edit 2: Thanks to #PatrickLu-MSFT, that's work.
I had already tried to restart the server before posting but without success.
This time I tried to restart all SQL services from SQL Configuration Manager and recreate the collection, but it still failed, it was not enough.
Then I used Services to restart the service again: SQL Server (MSSSQLSERVER) and I reboot the server as Patrick told me. And it worked, I was able to create my collection with inheritance model!
According to your description, there maybe something wrong with your SQL Service.
Please attempt to restart the SQL Server service, and if it hung up on trying to stop the service. Then you could try to reboot the server and try to create a new collection again.
If this not do the trick, also kindly check if there are some information in Event View. That might help pinpoint the problem.

JPAM Configuration for Apache Drill

I'm trying to configure PLAIN authentification based on JPAM 1.1 and am going crazy since it doesnt work after x times checking my syntax and settings. When I start drill with cluster-id and zk-connect only, it works, but with both options of PLAIN authentification it fails. Since I started with pam4j and tried JPAM later on, I kept JPAM for this post. In general I don't have any preferences. I just want to get it done. I'm running Drill on CentOS in embedded mode.
I've done anything required due to the official documentation:
I downloaded JPAM 1.1, uncompressed it and put libjpam.so into a specific folder (/opt/pamfile/)
I've edited drill-env.sh with:
export DRILLBIT_JAVA_OPTS="-Djava.library.path=/opt/pamfile/"
I edited drill-override.conf with:
drill.exec: {
cluster-id: "drillbits1",
zk.connect: "local",
impersonation: {
enabled: true,
max_chained_user_hops: 3
},
security: {
auth.mechanisms: ["PLAIN"],
},
security.user.auth: {
enabled: true,
packages += "org.apache.drill.exec.rpc.user.security",
impl: "pam",
pam_profiles: [ "sudo", "login" ]
}
}
It throws the subsequent error:
Error: Failure in starting embedded Drillbit: org.apache.drill.exec.exception.DrillbitStartupException: Problem in finding the native library of JPAM (Pluggable Authenticator Module API). Make sure to set Drillbit JVM option 'java.library.path' to point to the directory where the native JPAM exists.:no jpam in java.library.path (state=,code=0)
I've run that *.sh file by hand to make sure that the necessary path is exported since I don't know if Drill is expecting that. The path to libjpam should be know known. I've started Sqlline with sudo et cetera. No chance. Documentation doesn't help. I don't get it why it's so bad and imo incomplete. Sadly there is 0 explanation how to troubleshoot or configure basic user authentification in detail.
Or do I have to do something which is not told but expected? Are there any Prerequsites concerning PLAIN authentification which aren't mentioned by Apache Drill itself?
Try change:
export DRILLBIT_JAVA_OPTS="-Djava.library.path=/opt/pamfile/"
to:
export DRILL_JAVA_OPTS="$DRILL_JAVA_OPTS -Djava.library.path=/opt/pamfile/"
It works for me.

Why DreamFactory 2.1.1 LOG_LEVEL .env parameter is ignored?

Since i've upgraded my Dreamfactory DSP from 2.0.2 to 2.1.1-2 , some configuration's parameters seems to be ignored!
DF_LOG_LEVEL is one of them and even if i change it, the value stay to WARNING as defined as the default value in the config/df.php
here is a part of my .env file:
##------------------------------------------------------------------------------
## DreamFactory Settings
##------------------------------------------------------------------------------
## LOG Level. This is hierarchical and goes in the following order.
## DEBUG -> INFO -> NOTICE -> WARNING -> ERROR -> CRITICAL -> ALERT -> EMERGENCY
## If you set log level to WARNING then all WARNING, ERROR, CRITICAL, ALERT, and EMERGENCY
## will be logged. Setting log level to DEBUG will log everything. Default is WARNING.
DF_LOG_LEVEL=DEBUG
(I've check that there is no other line in my .env file about the LOG_LEVEL)
Here is the config/df.php section about LOG_LEVEL: (where default is WARNING)
'version' => '2.1.1',
// General API version number, 1.x was earlier product and may be supported by most services
'api_version' => '2.0',
// Name of this DreamFactory instance. Defaults to server name.
'instance_name' => env('DF_INSTANCE_NAME', gethostname()),
// Log level
'log_level' => env('DF_LOG_LEVEL', 'WARNING'),
When i change the DF_LOG_LEVEL to other value in my .env file, Even after restarting my server nothing change in my Log file and in the Admin section Config/System Info i still have:
DreamFactory Instance
Admin Application Version: 2.1.5
DreamFactory Version: 2.1.1
System Database: mysql
Install Path: /opt/df2/apps/dreamfactory/htdocs/
Log Path: /opt/df2/apps/dreamfactory/htdocs/storage/logs/
Log Mode: single
Log Level: WARNING
I have noticed the same trouble with other parameters like the DF_ALLOW_FOREVER_SESSIONS=true
That is also no more effective !
Any help or suggestion ?
After making changes to the .env file in DreamFactory it is recommended to issue the following commands for the changes to be read from .env file (from htdocs folder or DF2 installation directory):
php artisan config:clear
php artisan cache:clear